ActiveMQ开启Https

版本:Apache ActiveMQ 5.16.3  服务器:CentOS 7

一、在conf/activemq.xml中,<transportConnectors></transportConnectors>的下面加入:

1 <sslContext>
2             <sslContext keyStore="file:${activemq.conf}/my.jks" keyStorePassword="password" />
3 </sslContext>

并且在<transportConnectors></transportConnectors>中加入,

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

然后重启activemq便可以开启wss连接mqtt

 

二、在conf/jety.xml中,将id="invokeConnectors"的<bean></bean>中的以下代码取消注释

<!-- bean id="SecureConnector" class="org.eclipse.jetty.server.ServerConnector">
                    <constructor-arg ref="Server" />
                    <constructor-arg>
                        <bean id="handlers" class="org.eclipse.jetty.util.ssl.SslContextFactory">
                        
                            <property name="keyStorePath" value="${activemq.conf}/broker.ks" />
                            <property name="keyStorePassword" value="password" />
                        </bean>
                    </constructor-arg>
                    <property name="port" value="8162" />
                </bean -->

把证书改为自己的证书路径、密码,如果activemq无法启动,并且日志报错:KeyStores with multiple certificates are not supported on the base class org.eclipse.jetty.util.ssl.SslContextFactory(日志文件是在data下的activemq.log)

就将 class="org.eclipse.jetty.util.ssl.SslContextFactory" 改为 class="org.eclipse.jetty.util.ssl.SslContextFactory.Server" 

然后重启activemq便可以开启https访问activemq的管理界面

posted @ 2023-02-02 16:07  北海南竹  阅读(516)  评论(0)    收藏  举报