230 votes

Impossible d'accéder à l'interface de gestion web de RabbitMQ après une nouvelle installation

J'ai installé la dernière version du serveur RabbitMQ (rabbitmq-server-3.3.0-1.noarch.rpm) sur une nouvelle machine virtuelle Centos 5.10 selon les instructions suivantes les instructions sur le site officiel.

J'ai fait cela plusieurs fois auparavant pendant le développement et je n'ai jamais eu de problèmes. Cependant, cette fois-ci, je ne peux pas me connecter à l'interface web de gestion en utilisant l'utilisateur invité/guest par défaut.

Dans les journaux, je vois ce qui suit :

=ERROR REPORT==== 4-Apr-2014::00:55:15 ===
webmachine error: path="api/whoami"
"Unauthorized"

Quelle pourrait en être la cause ?

588voto

Gas Points 2205

Ses nouvelles fonctionnalités depuis la version 3.3.0 http://www.rabbitmq.com/release-notes/README-3.3.0.txt

server
------

...
25603 prevent access using the default guest/guest credentials except via
      localhost.

Si vous voulez permettre à l'utilisateur invité de lire ce ou ceci RabbitMQ 3.3.1 ne peut pas se connecter avec guest/guest

# remove guest from loopback_users in rabbitmq.config like this
[{rabbit, [{loopback_users, []}]}].
# It is danger for default user and default password for remote access
# better to change password 
rabbitmqctl  change_password guest NEWPASSWORD

Si vous voulez créer un nouvel utilisateur avec des droits d'administrateur :

rabbitmqctl add_user test test
rabbitmqctl set_user_tags test administrator
rabbitmqctl set_permissions -p / test ".*" ".*" ".*"

Maintenant vous pouvez accéder en utilisant le test test.

2 votes

Merci ! Ce changement m'a vraiment pris par surprise. (Désolé pour l'acceptation tardive.)

5 votes

Souvent, la vérification des règles du pare-feu en plus de cette réponse résout l'autre problème de la majorité des erreurs d'authentification et de connexion.

6 votes

Merci pour set_user_tags ¡!

80voto

Robocide Points 1084

Si vous ne pouvez toujours pas accéder à la console de gestion après une nouvelle installation, vérifiez si l'option La console de gestion a été activée. Pour l'activer :

  1. Allez à l'invite de commande de RabbitMQ.

  2. Type :

    rabbitmq-plugins enable rabbitmq_management

14voto

BlaM Points 10753

Quelque chose qui vient de m'arriver et qui m'a causé quelques maux de tête :

J'ai configuré un nouveau serveur Linux RabbitMQ et utilisé un script shell script pour configurer mes propres utilisateurs personnalisés (pas d'invité !).

Le script comportait plusieurs de ces blocs de "code" :

rabbitmqctl add_user test test
rabbitmqctl set_user_tags test administrator
rabbitmqctl set_permissions -p / test ".*" ".*" ".*"

Très similaire à celui de La réponse de Gabriele donc je prends son code et je n'ai pas besoin d'expurger les mots de passe.

Je n'ai toujours pas réussi à me connecter à la console de gestion. J'ai alors remarqué que j'avais créé le setup script sous Windows (fin de ligne CR+LF) et converti le fichier en Linux (LF uniquement), puis réexécuté le setup script sur mon serveur Linux.

... et je n'étais toujours pas capable de me connecter, parce que cela a pris encore 15 minutes jusqu'à ce que je réalise que le fait d'appeler add_user encore et encore ne réparerait pas les mots de passe cassés (qui se terminaient probablement par un caractère CR). J'ai dû appeler change_password pour chaque utilisateur pour réparer mon erreur précédente :

rabbitmqctl change_password test test

(Une autre solution aurait été de supprimer tous les utilisateurs, puis d'appeler à nouveau le script).

2voto

Nae Points 5451

Si vous êtes sous Windows et que vous avez installé chocolatey, assurez-vous que le pare-feu autorise les ports par défaut :

netsh advfirewall firewall add rule name="RabbitMQ Management" dir=in action=allow protocol=TCP localport=15672
netsh advfirewall firewall add rule name="RabbitMQ" dir=in action=allow protocol=TCP localport=5672

pour le à distance accès.

-2voto

Amanda meng Points 17

Si vous êtes sous Mac OS, vous devez ouvrir l'onglet /usr/local/etc/rabbitmq/rabbitmq-env.conf et définir NODE_IP_ADDRESS= Il s'agissait auparavant de 127.0.0.1. Ensuite, ajoutez un autre utilisateur comme le suggère la réponse acceptée. Après cela, redémarrez rabbitMQ, brew services restart rabbitmq

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X