wordpress網(wǎng)站速度時快時慢seo網(wǎng)站優(yōu)化培訓(xùn)廠家報價
🛠 1. RabbitMQ 簡介
RabbitMQ 是一個開源的消息代理中間件,廣泛應(yīng)用于高并發(fā)、異步任務(wù)隊列的場景中。在分布式系統(tǒng)架構(gòu)中,RabbitMQ 可以充當消息的中轉(zhuǎn)站,幫助不同服務(wù)之間進行高效的消息通信。
在這篇文章中,我們將:
- 直接在云服務(wù)器上安裝 RabbitMQ
- 配置防火墻和安全組,讓外網(wǎng)訪問變得安全
- 管理默認的
guest
用戶,并創(chuàng)建自定義的管理員賬戶
🔧 2. 環(huán)境準備
在開始之前,你需要確保你已經(jīng)有一臺云服務(wù)器(例如阿里云或 AWS)。本文假設(shè)你使用的是 Ubuntu 服務(wù)器,但大部分步驟也適用于其他 Linux 發(fā)行版。
🚀 3. 步驟一:安裝 RabbitMQ
我們需要先安裝 RabbitMQ 的依賴項:Erlang。
3.1 安裝 Erlang
RabbitMQ 依賴 Erlang 作為運行環(huán)境。運行以下命令來安裝 Erlang:
sudo apt-get update
sudo apt-get install -y erlang
3.2 安裝 RabbitMQ
一旦 Erlang 安裝好后,你可以通過以下命令來安裝 RabbitMQ:
sudo apt-get install -y rabbitmq-server
3.3 啟動并驗證 RabbitMQ 服務(wù)
安裝完 RabbitMQ 后,確保它在啟動并運行:
sudo systemctl enable rabbitmq-server
sudo systemctl start rabbitmq-server
驗證 RabbitMQ 是否啟動:
sudo systemctl status rabbitmq-server
如果顯示 active (running)
,恭喜你!RabbitMQ 已經(jīng)安裝并啟動成功。
🔐 4. 防火墻與安全組配置:確保外部訪問 RabbitMQ
RabbitMQ 安裝好后,默認情況下只允許從本地訪問。為了讓外部能夠訪問 RabbitMQ,我們需要在云平臺上配置 安全組 以及服務(wù)器上的 防火墻。
4.1 配置阿里云/云服務(wù)商安全組
登錄到云平臺控制臺,找到你的服務(wù)器實例,進入安全組設(shè)置。我們需要開放兩個端口:
- 15672:RabbitMQ Web 管理界面
- 5672:AMQP 協(xié)議端口,用于客戶端連接
添加以下安全組規(guī)則:
端口范圍 | 協(xié)議 | 源 | 描述 |
---|---|---|---|
15672 | TCP | 0.0.0.0/0 | RabbitMQ Web 管理端口 |
5672 | TCP | 0.0.0.0/0 | AMQP 客戶端連接端口 |
4.2 配置服務(wù)器防火墻
RabbitMQ 的端口可能還被服務(wù)器的防火墻阻擋。使用 ufw
(Ubuntu 默認的防火墻)來開放端口:
sudo ufw allow 15672/tcp
sudo ufw allow 5672/tcp
sudo ufw reload
?通過 ufw status
檢查防火墻規(guī)則是否生效。
sudo ufw status
👨?💻 5. 訪問 RabbitMQ Web 管理界面
瀏覽器訪問 http://<你的服務(wù)器IP>:15672
,你應(yīng)該能看到 RabbitMQ 的登錄頁面。
5.1 登錄問題:guest
用戶的遠程訪問限制
默認情況下,RabbitMQ 安裝完成后有一個用戶 guest/guest
,但出于安全原因,RabbitMQ 只允許 guest
用戶從 localhost
登錄。
如果你想允許 guest
從外部登錄,需要修改配置文件:
sudo nano /etc/rabbitmq/rabbitmq.conf
添加以下內(nèi)容:
loopback_users = none
保存后重啟 RabbitMQ:
sudo systemctl restart rabbitmq-server
你現(xiàn)在可以使用默認的 guest
用戶從外部登錄。
🧑?🔧 6. 創(chuàng)建自定義管理員用戶
雖然你可以啟用 guest
遠程登錄,但為了提高安全性,建議創(chuàng)建一個新的管理員用戶。
6.1 創(chuàng)建新用戶
使用以下命令創(chuàng)建一個新用戶并賦予管理員權(quán)限:
# 創(chuàng)建用戶名為 admin,密碼為 yourpassword 的用戶
sudo rabbitmqctl add_user admin yourpassword# 賦予管理員權(quán)限
sudo rabbitmqctl set_user_tags admin administrator# 設(shè)置用戶權(quán)限
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
你現(xiàn)在可以使用新的 admin
用戶登錄 RabbitMQ 管理界面。
🔒 7. 更改 guest
用戶密碼
出于安全考慮,最好禁用或更改 guest
用戶的默認密碼。你可以通過以下命令修改 guest
用戶的密碼:
sudo rabbitmqctl change_password guest newpassword
? 8. 最后一步:驗證一切是否工作正常
- 通過
http://<你的服務(wù)器IP>:15672
登錄 RabbitMQ 管理界面,使用你新創(chuàng)建的用戶或修改后的guest
用戶。 - 驗證客戶端是否可以通過 AMQP 協(xié)議連接(使用 5672 端口)。