ActiveMQ关于WSS的配置(SSL)

ActiveMQ版本:5.15.3

在ActiveMQ的使用中,如果在https域名下使用ws协议是无法通讯的,需要使用wss,开启ssl,在\conf\activemq.xml

新的activemq.xml中,是不存在SSL配置的,需要加入以下配置(位于broker节点下),作为单向的SSL认证(服务端)

<sslContext>
     <sslContext keyStore="file:${activemq.conf}/activeMQ.jks" keyStorePassword="证书密码1" />
</sslContext>

注意:ActiveMQ自带的broker.ks、broker.ts等证书在正式环境下是不可用的,需要重新生成,此处因为有了阿里云的证书(免费的),(图中就是阿里云下载的免费CA证书,注意是基于tomcat的)

如何获取阿里云的免费证书,请自行百度了

可以由阿里云的免费证书(.pfx文件)再生成.jks文件,命令如下:

keytool -importkeystore -srckeystore "D:\test\214349757890770.pfx" -destkeystore "D:\test\activeMQ.jks" -srcstoretype PKCS12 -deststoretype JKS

回车后会让输入三次密码,这三次密码最好都是相同的,以免产生不必要的麻烦,当然我没有过多时间去验证是否可以设置为其他密码;

此处第三次的密码见pfx-password.txt中

Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
输入目标密钥库口令:证书密码1
再次输入新口令:证书密码1
输入源密钥库口令:原证书密码(pfx-password.txt)
已成功导入别名 alias 的条目。
已完成导入命令: 1 个条目成功导入, 0 个条目失败或取消

到此,证书生成完毕,我们还需要在\conf\activemq.xml的transportConnectors节点下增加(当然,name和端口是任意的,只要别被占用就行):

<transportConnector name="wss" uri="wss://0.0.0.0:61615?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>

好了,到此我们的配置已经完成,重启MQ就可以测试wss是否通畅了,在此推荐开源项目https://github.com/eclipse/paho.mqtt.javascript

下面是测试效果图

猜你喜欢

转载自my.oschina.net/u/732671/blog/1797687
wss
今日推荐