以下是Ubuntu RabbitMQ的安全设置方法:
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 ".*" ".*" ".*" # 配置权限 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 # 生成自签名证书(示例) 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 # 重启服务 sudo ufw deny in on eth0 from any to any port 5672 # 拒绝非信任IP访问AMQP端口(示例) sudo ufw allow 15672/tcp # 允许管理端口(若需远程访问) sudo ufw reload sudo apt update && sudo apt upgrade rabbitmq-server erlang # 更新软件包 sudo tail -f /var/log/rabbitmq/rabbit@主机名.log # 查看日志 注:生产环境中建议结合集群部署、虚拟主机隔离及更严格的权限策略,参考官方文档可获取更详细的SSL配置步骤。