ไม่สามารถเข้าถึงอินเตอร์เฟสการจัดการเว็บ RabbitMQ หลังจากติดตั้งใหม่


204

ฉันได้ติดตั้งเซิร์ฟเวอร์ RabbitMQ ล่าสุด (rabbitmq-server-3.3.0-1.noarch.rpm) บน Centos 5.10 VM ใหม่ตามคำแนะนำในเว็บไซต์อย่างเป็นทางการ

ฉันเคยทำมาแล้วหลายครั้งในระหว่างการพัฒนาและไม่เคยมีปัญหาใด ๆ อย่างไรก็ตามครั้งนี้ฉันไม่สามารถเข้าสู่เว็บอินเตอร์เฟสการจัดการโดยใช้ผู้เยี่ยมชม / แขกผู้ใช้เริ่มต้น

ในบันทึกฉันเห็นสิ่งต่อไปนี้:

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

สิ่งใดที่ทำให้เกิดสิ่งนี้

คำตอบ:


541

มันเป็นคุณสมบัติใหม่ตั้งแต่เวอร์ชั่น 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.

หากคุณต้องการเปิดใช้งานผู้ใช้ของผู้เยี่ยมชมอ่านนี้หรือRabbitMQ 3.3.1 นี้ไม่สามารถเข้าสู่ระบบด้วยแขก / แขก

# 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

หากคุณต้องการสร้างผู้ใช้ใหม่ด้วยสิทธิ์ของผู้ดูแลระบบ:

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

ตอนนี้คุณสามารถเข้าถึงโดยใช้การทดสอบทดสอบ


2
ขอบคุณ! การเปลี่ยนแปลงนี้ทำให้ฉันประหลาดใจอย่างแน่นอน (ขออภัยเกี่ยวกับการรับสาย)
T

3
บ่อยครั้งที่การตรวจสอบกฎไฟร์วอลล์เพิ่มเติมจากคำตอบนี้จะช่วยแก้ไขข้อผิดพลาดส่วนใหญ่และการเชื่อมต่ออื่น ๆ
pinepain

5
ขอบคุณสำหรับset_user_tags!
Alexandr T

@Gas ฉันได้ทำตามที่คุณพูดถึงคำตอบของคุณฉันจะเข้าถึงอินเตอร์เฟซการจัดการ RabbitMQ บนคอมพิวเตอร์ของฉันได้อย่างไรเมื่อฉันเขียน "myServerIP": 15672 ฉันไม่ได้อะไรเลย ฉันได้เริ่มปลั๊กอินบนเซิร์ฟเวอร์ของฉันแล้วและเริ่ม RabbitMQ
Pankaj Nimgade

1
@PankajNimgade อาจเป็นปัญหาไฟร์วอลล์ ลอง telnet myServerIP 15672 เพื่อดูว่าพอร์ต 15672 เปิดอยู่หรือไม่
Gabriele

59

ถึงผู้ที่เคยเข้ามาที่เธรดนี้ แต่ยังไม่สามารถเข้าถึงคอนโซลการจัดการหลังจากติดตั้งใหม่ปัญหาของฉันคือว่าไม่ได้เปิดใช้งานคอนโซลการจัดการฉันแก้ไขโดยคำสั่งนี้:

  1. ไปที่พรอมต์คำสั่ง rabbitMq
  2. ประเภท:

    rabbitmq-plugins enable rabbitmq_management
    

2
นี่เป็นกรณีหลังจากติดตั้งด้วย Chocolatety บน Windows 10 สคริปต์การติดตั้งกล่าวว่าปลั๊กอินการจัดการถูกเปิดใช้งาน แต่ในความเป็นจริงไม่มีการเปิดใช้งานปลั๊กอิน
Eris

3
สำหรับหุ่นอย่างฉัน: 1. ไปที่โฟลเดอร์: C: \ Program Files \ RabbitMQ Server \ rabbitmq_server-3.7.3 \ sbin 2. เรียกใช้ rabbitmq-plugins เปิดใช้งาน rabbitmq_management 3. ไปที่บริการรีสตาร์ทบริการ Rabbitmq ด้วยตนเอง (หรือเรียกใช้บริการ rabbmimq- บริการรีสตาร์ท)
Johnny Chu

แก้ไขให้ฉัน (บันทึกการประทับเวลา)
HouseCat

ซ่อมมัน. (คุณอาจต้องการsudo)
Ali Yılmaz

ด้วยเว็บอินเตอร์เฟสการติดตั้งใหม่ทั้งหมดไม่ได้เปิดใช้งานพร้อมคำแนะนำที่ให้ไว้ภายใต้คำตอบนี้ สามารถเข้าถึงเว็บอินเตอร์เฟสได้ แต่การเข้าสู่ระบบของผู้ใช้ทั่วไปยังคงไม่ทำงาน ทำตามคำแนะนำที่ให้ไว้ภายใต้หัวข้อนี้ ( stackoverflow.com/a/40845332/1132288 ) และสามารถเข้าสู่ระบบด้วยผู้ใช้ "ทดสอบ"
Pandurang Patil

13

สิ่งที่เพิ่งเกิดขึ้นกับฉันและทำให้ฉันปวดหัว:

ฉันได้ตั้งค่าเซิร์ฟเวอร์ Linux RabbitMQ ใหม่และใช้เชลล์สคริปต์เพื่อตั้งค่าผู้ใช้ที่กำหนดเองของฉัน (ไม่ใช่แขก!)

สคริปต์มีบล็อก "code" เหล่านั้นหลายตัว:

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

คล้ายกับคำตอบของ Gabrieleดังนั้นฉันจึงนำรหัสของเขาและไม่จำเป็นต้อง redact รหัสผ่าน

ถึงกระนั้นฉันก็ไม่สามารถเข้าสู่ระบบในคอนโซลการจัดการ จากนั้นฉันสังเกตเห็นว่าฉันได้สร้างสคริปต์การติดตั้งใน Windows (CR + LF line ลงท้าย) และแปลงไฟล์เป็น Linux (LF เท่านั้น) จากนั้นทำการรันสคริปต์การตั้งค่าบนเซิร์ฟเวอร์ Linux ของฉันอีกครั้ง

... และก็ยังไม่สามารถเข้าสู่ระบบได้เพราะใช้เวลาอีก 15 นาทีจนกว่าฉันจะรู้ว่าการเรียก add_user ซ้ำแล้วซ้ำอีกจะไม่สามารถแก้ไขรหัสผ่านที่ใช้งานไม่ได้ (ซึ่งอาจลงท้ายด้วยอักขระ CR) ฉันต้องเรียก change_password เพื่อให้ผู้ใช้ทุกคนแก้ไขข้อผิดพลาดก่อนหน้านี้:

rabbitmqctl change_password test test

(โซลูชันอื่นจะต้องลบผู้ใช้ทั้งหมดแล้วโทรสคริปต์อีกครั้ง)


-1

หากคุณอยู่ใน Mac OS คุณจะต้องเปิด/usr/local/etc/rabbitmq/rabbitmq-env.confและตั้งค่าNODE_IP_ADDRESS=ซึ่งเคยเป็น 127.0.0.1 จากนั้นเพิ่มผู้ใช้รายอื่นตามคำแนะนำที่ยอมรับ หลังจากนั้นให้รีสตาร์ท rabbitMQbrew services restart rabbitmq

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.