ubuntu

Ubuntu RabbitMQ安全设置方法

小樊
41
2025-08-14 01:43:41
栏目: 智能运维

以下是Ubuntu RabbitMQ的安全设置方法:

  1. 修改默认凭据:删除默认用户guest或修改其密码,创建具有强密码的新管理员用户并授予权限。
    sudo rabbitmqctl delete_user guest  # 删除默认用户(可选)  
    sudo rabbitmqctl add_user admin strongpassword  # 添加新用户  
    sudo rabbitmqctl set_user_tags admin administrator  # 授予管理员权限  
    sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"  # 配置权限  
    
  2. 启用管理插件并限制访问:启用Web管理插件,仅允许特定IP访问管理界面。
    sudo rabbitmq-plugins enable rabbitmq_management  # 启用插件  
    sudo nano /etc/rabbitmq/rabbitmq.conf  # 编辑配置文件  
    # 添加以下内容(限制管理界面IP)  
    management.tcp.ip = 192.168.1.100  
    sudo ufw allow 15672/tcp  # 放行管理端口  
    sudo ufw reload  
    
  3. 配置SSL加密:生成证书并修改配置文件,启用SSL监听端口(如5671)。
    # 生成自签名证书(示例)  
    openssl req -x509 -newkey rsa:2048 -keyout rabbitmq.key -out rabbitmq.crt -days 365 -nodes  
    sudo mkdir -p /etc/rabbitmq/ssl  
    sudo cp rabbitmq.* /etc/rabbitmq/ssl/  
    # 编辑配置文件  
    sudo nano /etc/rabbitmq/rabbitmq.conf  
    # 添加以下内容  
    listeners.ssl.default = 5671  
    ssl_options.cacertfile = /etc/rabbitmq/ssl/rabbitmq.crt  
    ssl_options.certfile = /etc/rabbitmq/ssl/rabbitmq.crt  
    ssl_options.keyfile = /etc/rabbitmq/ssl/rabbitmq.key  
    ssl_options.verify = verify_peer  
    ssl_options.fail_if_no_peer_cert = true  
    sudo systemctl restart rabbitmq-server  # 重启服务  
    
  4. 防火墙与端口管理:仅开放必要端口(如5672、15672),关闭默认未使用端口。
    sudo ufw deny in on eth0 from any to any port 5672  # 拒绝非信任IP访问AMQP端口(示例)  
    sudo ufw allow 15672/tcp  # 允许管理端口(若需远程访问)  
    sudo ufw reload  
    
  5. 定期更新与监控:保持RabbitMQ和Erlang版本最新,启用日志记录并定期审查异常。
    sudo apt update && sudo apt upgrade rabbitmq-server erlang  # 更新软件包  
    sudo tail -f /var/log/rabbitmq/rabbit@主机名.log  # 查看日志  
    

:生产环境中建议结合集群部署、虚拟主机隔离及更严格的权限策略,参考官方文档可获取更详细的SSL配置步骤。

0
看了该问题的人还看了