为RabbitMQ配置SSL

1. 安装 OpenSSL

从 OpenSSL 的官方网站(https://www.openssl.org/)下载 OpenSSL 工具的 Windows 版本,并安装。

2. 创建 SSL 证书和私钥

执行以下命令以生成私钥文件(.key)和证书签名请求文件(.csr):

openssl req -newkey rsa:2048 -nodes -keyout your_private_key.key -out your_csr_file.csr

在执行此命令时,你需要回答一些关于证书的问题。最重要的是 Common Name (CN),它通常是你的 RabbitMQ 服务器的主机名。

Country Name (2 letter code) [AU]: CN
State or Province Name (full name) [Some-State]: JS
Locality Name (eg, city) []: NJ
Organization Name (eg, company) [Internet Widgits Pty Ltd]: MyOrg
Organizational Unit Name (eg, section) []: MyDep
Common Name (e.g. server FQDN or YOUR name) []: CUS
Email Address []: ******@hotmail.com

使用以下命令生成自签名证书:

openssl x509 -req -in your_csr_file.csr -signkey your_private_key.key -out your_cert_file.pem
3. 配置 RabbitMQ 使用 SSL

在 RabbitMQ 配置文件(rabbitmq.config或者advanced.config)中,添加 SSL 相关配置。示例配置如下:
该文件通常在这里:C:\Users\user_name\AppData\Roaming\RabbitMQ

[
  {rabbit, [
    {ssl_listeners, [5671]},
    {ssl_options, [
      {cacertfile,"path/to/your_csr_file.csr"},
      {certfile,"path/to/your_cert_file.pem"},
      {keyfile,"path/to/your_private_key.key"},
      {verify,verify_peer},
      {fail_if_no_peer_cert,true}
    ]}
  ]}
].

确保替换上述示例中的路径为你生成的证书和私钥文件的实际路径。
[备注]: 我不太确定 cacertfile 后面应该填什么,似乎填csr或者key都没有什么影响。有清楚的同学欢迎在评论区告诉我。谢谢。

4. 重启 RabbitMQ

在 RabbitMQ 配置更改后,重启 RabbitMQ 服务以使更改生效。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在Spring Boot中配置SSL访问RabbitMQ,需要遵循以下步骤: 1. 生成证书 首先,需要生成一个证书,用于启用SSL连接。可以使用以下命令生成一个自签名的证书: ``` keytool -genkeypair -alias rabbitmq -keyalg RSA -keysize 2048 -storetype PKCS12 -keystore rabbitmq.p12 -validity 3650 ``` 该命令将生成一个名为`rabbitmq.p12`的证书文件。在生成证书时,需要注意以下几点: - `alias`参数用于指定证书别名,可以根据需要进行更改。 - `storetype`参数用于指定证书存储类型,这里使用`PKCS12`格式。 - `validity`参数用于指定证书有效期,这里为10年。 2. 配置RabbitMQ 接下来,需要在RabbitMQ上启用SSL连接。在RabbitMQ服务器上,需要将证书文件`rabbitmq.p12`复制到`/etc/rabbitmq/ssl`目录中,并将其权限设置为`644`。然后,需要创建一个RabbitMQ配置文件,指定SSL参数和证书路径: ``` ssl_options.verify = verify_peer ssl_options.fail_if_no_peer_cert = false ssl_options.cacertfile = /etc/rabbitmq/ssl/ca_certificate.pem ssl_options.certfile = /etc/rabbitmq/ssl/server_certificate.pem ssl_options.keyfile = /etc/rabbitmq/ssl/server_key.pem ssl_options.password = password ssl_options.versions = ['tlsv1.2'] ``` 其中,`cacertfile`参数指定CA证书路径,`certfile`参数指定服务器证书路径,`keyfile`参数指定服务器私钥路径,`password`参数指定证书密码。`versions`参数指定支持的TLS版本。 3. 在Spring Boot中启用SSL连接 最后,需要在Spring Boot应用程序中启用SSL连接。可以在`application.properties`文件中添加以下配置: ``` spring.rabbitmq.ssl.enabled=true spring.rabbitmq.ssl.key-store-type=PKCS12 spring.rabbitmq.ssl.key-store=classpath:rabbitmq.p12 spring.rabbitmq.ssl.key-store-password=password spring.rabbitmq.ssl.trust-store-type=PEM spring.rabbitmq.ssl.trust-store=classpath:ca_certificate.pem ``` 其中,`key-store-type`参数指定证书类型,`key-store`参数指定证书路径,`key-store-password`参数指定证书密码。`trust-store-type`参数指定CA证书类型,`trust-store`参数指定CA证书路径。 现在,应用程序应该能够使用SSL连接到RabbitMQ了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皓月如我

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值