ubuntu

RabbitMQ在Ubuntu上的安全设置怎么做

小樊
51
2025-09-05 04:02:28
栏目: 智能运维

以下是RabbitMQ在Ubuntu上的安全设置步骤:

  1. 修改默认凭据

    • 删除默认的guest用户或限制其仅本地访问:
      sudo rabbitmqctl delete_user guest  # 删除默认用户  
      # 或修改配置文件 /etc/rabbitmq/rabbitmq.conf,添加:  
      # loopback_users = none  # 允许guest远程访问(不推荐生产环境使用)  
      
    • 创建新管理员用户并设置密码:
      sudo rabbitmqctl add_user admin yourpassword  
      sudo rabbitmqctl set_user_tags admin administrator  
      sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"  
      
  2. 配置防火墙

    • 仅开放必要端口(默认AMQP端口5672、管理界面端口15672):
      sudo ufw allow 5672/tcp  
      sudo ufw allow 15672/tcp  
      sudo ufw reload  
      
  3. 启用管理插件并限制访问

    • 启用Web管理插件:
      sudo rabbitmq-plugins enable rabbitmq_management  
      
    • 若需远程访问管理界面,需在配置文件中指定允许的IP(默认仅本地):
      # 编辑 /etc/rabbitmq/rabbitmq.conf,添加:  
      # management.tcp.ip = 192.168.1.100  # 仅允许指定IP访问管理界面  
      sudo systemctl restart rabbitmq-server  
      
  4. 启用TLS/SSL加密(可选)

    • 生成证书并配置RabbitMQ使用SSL:
      # 在 /etc/rabbitmq/rabbitmq.conf 中添加:  
      listeners.ssl.default = 5671  
      ssl_options.cacertfile = /path/to/ca_certificate.pem  
      ssl_options.certfile = /path/to/server_certificate.pem  
      ssl_options.keyfile = /path/to/server_key.pem  
      ssl_options.verify = verify_peer  
      ssl_options.fail_if_no_peer_cert = true  
      sudo systemctl restart rabbitmq-server  
      
  5. 定期更新与监控

    • 保持RabbitMQ和Erlang版本最新,修复安全漏洞:
      sudo apt update && sudo apt upgrade  
      
    • 启用日志记录并定期检查异常。

关键安全建议

0
看了该问题的人还看了