安装好ActiveMQ后,其默认没有任何安全控制,任何人都可以通过8161端口登录Web控制台,任何人都可以通过61616端口发送和接收JMS消息。在实际应用中,需要由我们自己对ActiveMQ进行安全性配置。
首先讲Web控制台的安全性。
ActiveMQ默认使用Jetty作为内嵌的Web服务器。当然,你也可以把ActiveMQ的部署到Tomcat、JBoss等其他服务器中。在这里,我们采用默认内嵌的Jetty,并使用JAAS来实现安全控制。
1、把 jetty-plus-6.1.9.jar 放到 ${activemq.base}/lib/web/中。如果你手上没有jetty-plus-6.1.9.jar文件,可以从Jetty的官方网站下载,下载Jetty6.1.9版本,解压后,在lib里可以找到该文件。
2、在${activemq.base}/conf/jetty.xml里,加上这么一段:
<userRealms>
<jaasUserRealm name="adminRealm" loginModuleName="adminLoginModule" />
</userRealms>
3、在${activemq.base}/conf/目录下新建一个login.config文件,内容如下:
adminLoginModule {
org.mortbay.jetty.plus.jaas.spi.PropertyFileLoginModule required
debug="true"
file="${activemq.base}/conf/login.properties";
};
4、在${activemq.base}/conf/目录下新建一个login.properties文件,内容如下:
myusername:mypassword,admins
该文件的格式是:用户名:密码,角色
5、在${activemq.base}/webapps/admin/WEB-INF/web.xml里,添加如下内容:
<security-constraint>
<web-resource-collection>
<web-resource-name>adminRealm</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admins</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>adminRealm</realm-name>
</login-config>
6、最后,修改${activemq.base}/bin/activemq文件,把配置文件添加到环境变量。把ACTIVEMQ_OPTS修改为:
ACTIVEMQ_OPTS="$ACTIVEMQ_OPTS $SUNJMX $SSL_OPTS -Djava.security.auth.login.config=${ACTIVEMQ_BASE}/conf/login.config"
配置完毕。重启ActiveMQ,在浏览器里打开http://localhost:8161/admin,就会弹出一个对话框,要求输入用户名和密码。
分享到:
相关推荐
5. **安全性**:在生产环境中,务必考虑安全性,包括设置强密码,启用SSL/TLS加密,以及配置合适的权限控制,以防止未授权访问。 6. **监控和日志**:利用ActiveMQ Web提供的监控工具,可以定期检查队列状态、消息...
总的来说,配置Tomcat下的ActiveMQ HTTP连接涉及到多个方面,包括XML配置文件的修改、Web控制台的部署、安全性的设置以及Stomp协议的使用。理解这些知识点,能帮助你在实际开发中有效利用ActiveMQ实现可靠的消息传递...
4. **安全性**:在 Web 环境下,安全性尤为重要。ActiveMQ 提供了 SSL/TLS 加密以及用户权限管理等功能,确保数据安全和访问控制。 5. **Web 控制台**:这个版本可能包含了 ActiveMQ 的 Web 控制台,允许用户通过...
`activemq-web-4.0-M2.jar`包含了ActiveMQ服务器的Web控制台和相关Web应用程序,使得用户可以通过浏览器方便地监控和管理ActiveMQ消息队列。这个组件通常部署在应用服务器如Tomcat或Jetty上,通过HTTP/HTTPS协议提供...
8. **安全性**:ActiveMQ支持多种安全策略,如SSL/TLS加密,以及基于角色的访问控制(RBAC),确保消息的安全传输。 9. **集成能力**:ActiveMQ可轻松集成到Spring框架,以及其他Java EE应用服务器中,如Tomcat、...
5. 安全性:ActiveMQ内置了用户认证和授权机制,可以通过SSL/TLS加密传输,保障数据的安全性。 二、ActiveMQ应用场景 1. 微服务通信:在微服务架构中,ActiveMQ作为服务间通信的桥梁,实现异步解耦和数据同步。 2. ...
5. **安全性** - **用户认证**:通过修改`conf/users.properties`和`conf/roles.properties`文件添加用户和角色。 - **SSL/TLS**:为网络通信提供加密,保障数据安全。 6. **消息持久化** - **KahaDB**:...
ActiveMQ使用两个主要端口:一个是消息通讯端口(默认为61616),另一个是Web控制台端口(默认为8161)。确保你的防火墙允许这些端口的入站连接。在Linux中,可以编辑`/etc/sysconfig/iptables`,添加以下规则,然后...
ActiveMQ的特点包括高可靠性、高性能、可扩展性和安全性。它支持持久化消息,即使在服务器重启后也能保证消息不丢失。同时,ActiveMQ还提供了多种策略来处理消息过载和网络故障。 在实际应用中,ActiveMQ常被用于...
7. **安全性**:ActiveMQ提供了基于角色的访问控制(RBAC)、SSL加密以及JAAS认证,确保消息传输的安全性。 8. **事务支持**:支持本地JMS事务和分布式JTA事务,确保消息的一致性和完整性。 9. **消息优先级与...
总之,"apache-activemq-5.15.11-bin.tar.gz"提供了强大的消息中间件服务,适用于Linux环境,涵盖了高可用性、高性能、安全性和可扩展性的需求。通过理解上述知识点,您可以有效地部署、配置和管理ActiveMQ,满足...
9. **安全性**:ActiveMQ支持基于角色的访问控制(RBAC)、SSL加密以及JAAS认证,保障了消息传递的安全性。 10. **性能优化**:ActiveMQ提供多种性能优化策略,例如预取(prefetching)技术,允许消费者在需要时...
用户可以根据需求修改这些配置以优化性能或安全性。 3. `lib`目录:包含了运行ActiveMQ所需的库文件,包括JMS API、ActiveMQ核心库以及与各种协议相关的库。 4. `webapps`目录:包含了Web控制台的相关文件,通过...
ActiveMQ还提供了一个Web控制台(默认端口8161),可以用来监控和管理队列、主题和连接。 为了实现高可用性和容错性,ActiveMQ支持多种部署模式,如网络集群、故障转移和复制。在集群模式下,多个ActiveMQ实例可以...
9. **性能监控**:ActiveMQ提供了一套强大的监控工具,包括Web控制台,可以用来查看消息的发送、接收和堆积情况,帮助优化系统性能。 10. **安全配置**:理解ActiveMQ的安全模型,包括用户身份验证和权限控制,这...
3. **Web控制台**:ActiveMQ内置了一个Web控制台,可以通过浏览器访问`http://localhost:8161/admin`来监控和管理队列、主题、连接和消费者等。 4. **消息模型**:ActiveMQ支持两种消息模型——点对点(Queue)和...
- `conf\jetty.xml`用于配置内置Jetty服务器,使得ActiveMQ可以通过Web控制台进行管理。 - 配置JVM参数,如内存大小、日志级别等,可通过修改`bin\setenv.bat`(Windows)或`bin/setenv.sh`(Unix/Linux)实现。 ...
将文件移动到 `/usr/local/` 目录下,确保文件的安全性,可以使用 `chmod -R 777` 命令给予所有用户读写执行权限。接着,使用 `tar` 命令解压缩文件,这将创建一个名为 `apache-activemq-5.3.0` 的目录,该目录包含...
6. **Web管理界面**: 提供了一个直观的Web控制台,方便用户监控、管理消息代理和队列。 7. **安全机制**: 可以配置SSL/TLS加密,以及用户权限和访问控制,保障系统安全。 8. **网络连接**: 支持集群和故障转移,...
6. **安全性**:ActiveMQ支持多种安全认证和授权机制,如JAAS(Java Authentication and Authorization Service),可以通过SSL/TLS加密通信,保障数据传输的安全性。 7. **性能优化**:5.12.0版本可能包含性能上的...