通过关注https://activemq.apache.org/rest.html,我可以通过REST API推送消息(例如curl -u admin:admin -d "body=message" http://localhost:8161/api/message/TEST?type=queue
有效,我可以在管理控制台中看到)但是,我希望能够使用HTTPS。我发现https://activemq.apache.org/http-and-https-transports-reference.html和http://troyjsd.blogspot.co.uk/2013/06/activemq-https.html但无法使其正常运行。基于这两个过时/不完整的链接:
所以,
curl
命令示例)?我使用ActiveMQ 5.9.1和Mac OS 10.9.4
答案 0 :(得分:2)
取消注释conf / jetty.xml的以下部分。
<!--
Enable this connector if you wish to use https with web console
-->
<!--
<bean id="SecureConnector" class="org.eclipse.jetty.server.ssl.SslSelectChannelConnector">
<property name="port" value="8162" />
<property name="keystore" value="file:${activemq.conf}/broker.ks" />
<property name="password" value="password" />
</bean>
-->
Jetty不仅支持WebConsole,还支持ActiveMQ中的所有HTTP内容。
它应该开箱即可用于测试,但您可能希望roll your own密钥库/证书可供实际使用。
您可以像以前一样在端口8162上使用curl,因为您提供了&#34;不安全&#34;国旗-k
。
否则,您需要以pem格式创建信任存储并提供它 - 有关详细信息,请参阅this SO。 Curl接受带有证书的参数--cacert <filename.pem>
或在其中发出CA.