RabbitMQ default login and password

March 7, 2025•6 min read•RabbitMQ tutorial

RabbitMQ default login and password

RabbitMQ default username and password

The default RabbitMQ username is guest and the default password is guest. These credentials are created automatically on a fresh installation, but the guest user can only log in from localhost. From any other machine the login is rejected.

ItemDefault
Usernameguest
Passwordguest
AMQP port5672
Management UI port15672
Management URLhttp://localhost:15672
Connection stringamqp://guest:guest@localhost:5672

What to do next:

  • On the same machine as RabbitMQ: open http://localhost:15672 and log in with guest / guest.
  • From another machine: create a new user, guest will not work remotely (see below).
  • In Docker: set your own credentials with RABBITMQ_DEFAULT_USER and RABBITMQ_DEFAULT_PASS (see Docker credentials).
  • In production: never keep guest / guest, create a dedicated admin user and delete the default one.

What the default guest user can do

The guest user is not a restricted demo account. On a fresh install it has:

  • The administrator tag, so it can log into the Management UI and manage users, policies and vhosts
  • Full configure, write and read permissions on the default virtual host /
  • A single restriction: it is only allowed to connect over the loopback interface (localhost, 127.0.0.1, ::1)

This is why guest / guest is fine for local development and dangerous anywhere else. The localhost restriction is the only thing preventing anyone who knows the default password from taking full control of the broker.

Can I use guest/guest remotely?

No, not by default. Since RabbitMQ 3.3, the guest user is restricted to localhost connections. This is controlled by the loopback_users setting, which contains guest out of the box.

When you try to use guest / guest from another machine, the password is correct but RabbitMQ refuses the connection anyway:

  • Management UI: the login page simply displays Login failed, with no further explanation.
  • AMQP clients: the connection is closed with an error like ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN. Some client libraries report it as a generic connection error, which makes it look like a network or port problem.
  • Server logs: RabbitMQ logs user 'guest' can only connect via localhost, which is the quickest way to confirm the cause.

The right fix: create a new user

Create a dedicated user and give it the permissions it needs:

rabbitmqctl add_user admin 'a_strong_password'
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

You can now log in remotely with admin and your password, both in the Management UI and with any AMQP client. Once it works, remove the default user:

rabbitmqctl delete_user guest

The shortcut: allow guest remotely

For a throwaway development machine you can lift the restriction in rabbitmq.conf:

loopback_users = none

Restart RabbitMQ for the change to take effect. Never do this on a server reachable from the internet: the username and password are publicly known, and automated scanners try guest / guest on port 15672 constantly.

How to log into the RabbitMQ Management UI

The Management UI is RabbitMQ's built-in web admin interface. To log in on a fresh installation:

  • Start RabbitMQ. Check it is running with rabbitmqctl status (or docker ps if you use Docker).
  • Enable the management plugin. It is not enabled on a package install, run rabbitmq-plugins enable rabbitmq_management. Docker images with the -management tag already have it.
  • Open http://localhost:15672 in your browser.
  • Enter the credentials. Username guest, password guest.
Default rabbitmq login page

If the login page does not load, the problem is the plugin, the service or the port, not the credentials. If the page loads but shows Login failed, the problem is the user: you are connecting remotely as guest, the password was changed, or the user does not have a management tag. The troubleshooting table below covers each case.

The Management UI gets the job done for basic administration, but it is showing its age. If you spend a lot of time in it, have a look at a better RabbitMQ UI.

RabbitMQ default credentials in Docker

With the official Docker image, the defaults are the same: guest / guest, with the Management UI on port 15672 when you use a -management tag.

docker run -d --name rabbitmq \
  -p 5672:5672 \
  -p 15672:15672 \
  rabbitmq:4-management

One difference: the Docker image disables the localhost restriction for guest, because connections forwarded through a published port do not come from the container's loopback interface. That is why guest / guest works from your host at http://localhost:15672.

To use your own credentials instead, set them with environment variables:

services:
  rabbitmq:
    image: rabbitmq:4-management
    ports:
      - "5672:5672"
      - "15672:15672"
    environment:
      RABBITMQ_DEFAULT_USER: admin
      RABBITMQ_DEFAULT_PASS: a_strong_password

A few things to keep in mind:

  • When RABBITMQ_DEFAULT_USER is set, the guest user is not created. Log in with your own credentials.
  • These variables are only applied the first time the node starts. If a volume already contains RabbitMQ data, changing them has no effect: update the user with rabbitmqctl change_password or remove the volume.
  • Without the 15672:15672 port mapping, the login page is unreachable from your machine even though RabbitMQ is running fine.

The full setup, including volumes, health checks and clustering, is covered in how to set up RabbitMQ with Docker and Docker Compose.

Troubleshooting RabbitMQ login problems

ProblemLikely reasonFix
guest / guest doesn't work remotelyguest is restricted to localhostCreate a new user with rabbitmqctl add_user
localhost:15672 doesn't openManagement plugin disabled, RabbitMQ not running, or port blockedrabbitmq-plugins enable rabbitmq_management, check rabbitmqctl status
Login page unavailable in DockerManagement port not published, or image without -managementAdd -p 15672:15672 and use a -management tag
Credentials rejected in DockerRABBITMQ_DEFAULT_USER is set, so guest doesn't existLog in with the credentials from your environment variables
Changed Docker credentials are ignoredExisting volume from a previous startrabbitmqctl change_password or recreate the volume
Login failed with a custom userWrong password, or user has no management tagrabbitmqctl set_user_tags <user> administrator
AMQP client gets ACCESS_REFUSEDWrong credentials, guest used remotely, or no permissions on the vhostrabbitmqctl set_permissions -p / <user> ".*" ".*" ".*"

To see which users exist and their tags, run rabbitmqctl list_users. To check that the ports are actually listening, see RabbitMQ ports explained.

Connect to RabbitMQ with RabbitGUI

Once you can log in, you may want something more comfortable than the built-in Management UI. RabbitGUI is a RabbitMQ IDE that connects through the same management port, with the same credentials. To connect to a local instance, create a connection with:

FieldValue
Display nameLocal, or any name (local connections are automatically colored in green)
Hosthttp://127.0.0.1:15672
Usernameguest
Passwordguest
AMQP connection stringamqp://guest:guest@localhost:5672

If you set custom credentials, in Docker or with rabbitmqctl, use those instead of guest / guest.

Create new connection rabbitmq

Save the connection and it appears in your list. You can add as many RabbitMQ instances as you want, local, staging and production, and switch between them in one click.

List of rabbitmq connexions

Managed brokers don't use guest / guest at all: the provider generates credentials for you. For example, see how to log into a CloudAMQP RabbitMQ instance.

FAQ

What is the default RabbitMQ password?

The default password is guest, for the default user guest. It only works from localhost.

What is the default RabbitMQ admin username and password?

There is no separate admin account. The guest user is the administrator on a fresh install, with the password guest.

What is the RabbitMQ Management UI URL?

http://localhost:15672, once the rabbitmq_management plugin is enabled.

Why does guest/guest say "Login failed"?

Most often because you are connecting from another machine and guest is restricted to localhost. In Docker, it can also mean RABBITMQ_DEFAULT_USER is set and the guest user was never created.

How do I change the default RabbitMQ password?

Run rabbitmqctl change_password guest 'new_password', or better, create a new administrator user and delete guest.

Working with RabbitMQ?

See how RabbitGUI can make your everyday RabbitMQ workflows easier.
Available on Windows, Mac, and Linux.

Try RabbitGUIRabbitGUI screenshot

Read more RabbitMQ tutorials

RabbitMQ exponential backoff: how to retry messages with increasing delaysRabbitMQ tutorialRabbitMQ exponential backoff: how to retry messages with increasing delaysHow to implement exponential backoff retries in RabbitMQ with TTL retry queues and dead-letter exchanges. Track attempts with an x-retry-count header, choose retry delays, and send final failures to a DLQ.What is AMQP? The Advanced Message Queuing Protocol explainedRabbitMQ tutorialWhat is AMQP? The Advanced Message Queuing Protocol explainedLearn what AMQP (Advanced Message Queuing Protocol) is, how it works, its core concepts, why it powers RabbitMQ, and how it compares to alternatives like MQTT, STOMP, and Kafka.Building an event bus with RabbitMQRabbitMQ tutorialBuilding an event bus with RabbitMQLearn how to design a decoupled event bus using a RabbitMQ topic exchange, with practical routing key conventions, durable queues, and animated diagrams showing message flow.RabbitMQ Retry Pattern: How to Retry Failed MessagesRabbitMQ tutorialRabbitMQ Retry Pattern: How to Retry Failed MessagesHow to retry failed messages in RabbitMQ without infinite requeue loops. Compare retry queues with TTL, exponential backoff and the delayed message exchange, cap retry attempts, and send final failures to a dead-letter queue.RabbitMQ exchange types explained: direct vs topic vs fanout vs headersRabbitMQ tutorialRabbitMQ exchange types explained: direct vs topic vs fanout vs headersLearn the 4 RabbitMQ exchange types: direct, fanout, topic and headers. See how routing keys work, when to use each exchange, and examples with animations.RabbitMQ Delayed MessagesRabbitMQ tutorialRabbitMQ Delayed MessagesLearn how to implement delayed messages in RabbitMQ using the delayed message exchange plugin and the message TTL with dead-letter queue pattern.