转自:http://tanyankai.iteye.com/blog/563334
JBoss服务器差不多每一个方面都可以用JMX或Web控制台来控制,所以你至少要确保它有密码保护的。否则,任何远程用户都可以控制你的服务器,为了保护它,我们将添加一个安全域。
假设你启动的服务器是用default配置集
1、为JMX Console设置密码保护
A.修改文件%JBOSS_HOME%\server\default\deploy\jmx-console.war\WEB-INF\jboss-web.xml,取消security-domain部分的注释
<security-domain>java:/jaas/jmx-console</security-domain>
这一步只是把安全域链接至web应用程序
B. 修改文件%JBOSS_HOME%\server\default\deploy\jmx-console.war\WEB-INF\web.xml,取消security-constraint部分的注释
<security-constraint>
<web-resource-collection>
<web-resource-name>HtmlAdaptor</web-resource-name>
<description>An example security config that only allows users with the
role JBossAdmin to access the HTML JMX console web application
</description>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>JBossAdmin</role-name>
</auth-constraint>
</security-constraint>
这一步告诉web应用程序执行那个安全策略,保护那个URL以及允许谁访问,但是用户名和密码从来哪里来?
在%JBOSS_HOME%\server\default\conf\login-config.xml文件指定了用户名和密码的存放路径
<application-policy name = "jmx-console">
<authentication>
<login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
flag = "required">
<module-option name="usersProperties">props/jmx-console-users.properties</module-option>
<module-option name="rolesProperties">props/jmx-console-roles.properties</module-option>
</login-module>
</authentication>
</application-policy>
C.接下来配置用户名和密码,打开./props/jmx-console-users.properties文件,这个文件存放的格式为“username=password”,现有的文件里面已经创建了一个“admin=admin”的用户和密码,基于安全考虑你可以修改为更为复杂的密码,或者删除这个用户然后再新建一个用户,但是新建的用户必须给它分配一个角色,用户角色在./jmx-console-roles.properties指定
A.修改%JBOSS_HOME%\server\default\deploy\management\console-mgr.sar\web-console.war\WEB-INF\ jboss-web.xml,取消security-domain部分的注释
<security-domain>java:/jaas/web-console</security-domain>
B. 修改%JBOSS_HOME%\server\default\deploy\management\console-mgr.sar\web-console.war\WEB-INF\web.xml,取消security-constraint部分的注释
<security-constraint>
<web-resource-collection>
<web-resource-name>HtmlAdaptor</web-resource-name>
<description>An example security config that only allows users with the
role JBossAdmin to access the HTML JMX console web application
</description>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>JBossAdmin</role-name>
</auth-constraint>
</security-constraint>
C. 接下来配置用户名和密码,web-console存放用户名和密码的文件路径稍微跟jmx-consol不一样,在%JBOSS_HOME%\server\default\conf\login-config.xml文件找到以下代码:
<application-policy name = "web-console">
<authentication>
<login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
flag = "required">
<module-option name="usersProperties">web-console-users.properties</module-option>
<module-option name="rolesProperties">web-console-roles.properties</module-option>
</login-module>
</authentication>
</application-policy>
它的存放路径是放在跟login-config.xml一个目录下的,如果没有这两个文件,可以自己创建对应名称的文件,配置跟jmx-console一样。
分享到:
相关推荐
### JBoss安全性设置详解 #### 一、JMX控制台安全性配置 在部署与管理Java应用服务器时,确保系统的安全性是至关重要的一步。对于JBoss AS(Application Server),特别是其管理控制台——JMX Console的安全性配置...
【JBOSS服务器安全配置基线】 JBOSS服务器安全配置基线是针对中国移动通信有限公司管理信息系统部维护的JBOSS服务器制定的一套安全性设置标准...遵循这些标准,可以有效提升JBOSS服务器的安全水平,保护企业信息安全。
JBOSS 服务器安全配置基线 JBOSS 服务器安全配置基线是指为了确保 JBOSS 服务器的安全稳定运行而制定的安全策略和配置。...通过建立安全配置基线,可以有效保障 JBOSS 服务器的安全稳定运行,保护企业信息安全。
总的来说,JBoss安全优化涵盖了多个层面,从基础的访问控制到高级的加密通信,都需要细致考虑和配置。正确实施这些措施可以极大地提高JBoss服务器的安全性和稳定性,防止未授权访问和数据泄露。
为了保护JMX控制台,我们需要在jboss-web.xml中启用安全性域。例如,将`<security-domain>`元素的注释去掉,设置为`<security-domain>java:/jaas/jmx-console</security-domain>`,这样就指定了JMX控制台应用使用的...
JBoss提供了多种安全模型,包括角色基安全、认证和授权等,开发者应熟悉如何配置用户、角色和权限,以保护应用程序的安全。 6.2 JAAS集成 Java Authentication and Authorization Service (JAAS) 是Java平台的标准...
- JBoss支持角色基于的安全认证,配置在`security-domain`元素内。 - 可以通过SSL/TLS加密网络通信,保护敏感数据。 8. **优化与故障排查**: - 调整配置文件以优化启动速度和资源利用率。 - 查看日志找出启动...
- **安全性服务**:讲解了如何设置安全策略来保护应用程序。 - **其他服务**:提到了除了上述服务之外的一些附加服务,如邮件服务等。 - **Web 容器—Tomcat**:由于 JBoss 内置了 Tomcat 作为 Web 容器,因此本节...
- **配置安全性域**: 介绍了如何配置安全性域以保护应用程序免受未经授权的访问。 - **使用RDBMS实现安全性**: 使用关系型数据库管理系统(RDBMS)来存储安全性信息的方法。 - **密码散列**: 如何使用密码散列技术增强...
6. **安全管理**:讲解JBoss的安全模型,包括用户认证、角色授权,以及如何配置SSL和JAAS(Java Authentication and Authorization Service)来保护应用。 7. **事务处理**:解释JBoss的事务管理功能,如JTA(Java ...
- **安全**:提供认证、授权和加密机制,保护服务免受未经授权的访问。 - **监控与管理**:提供管理和监控工具,便于故障排查和性能优化。 3. **JBoss ESB架构** JBoss ESB基于Java EE和JBoss Microcontainer,...
- **管理接口的安全性**:保护管理接口不被未经授权的访问。 - **初始化设置**:基本的安全配置步骤。 - **快速配置**:简化的安全设置流程。 - **详细配置**: - **管理接口**:定义访问管理控制台所需的凭证。...
在JBOSS这样的Java应用服务器中,实现EJB角色安全对于保护系统资源至关重要。 在基于JBOSS的EJB角色安全中,我们通常会遵循以下步骤: 1. **定义安全角色**:首先,需要定义应用程序中的安全角色,这些角色可以是...
在过去的几年中,由于其广泛使用,JBoss也成为了黑客们的目标,存在一些安全漏洞,这些漏洞如果被恶意利用,可能会导致系统被攻击者控制、数据泄露或服务中断。本文将深入探讨JBoss的漏洞利用及其防范措施。 1. **...
下面,我们将深入探讨如何在JBOSS4中配置jmx-console的登录密码,确保系统安全的同时,也能够方便地进行管理和监控。 ### JBOSS4中jmx-console密码设置详解 #### 1. **定位jmx-console部署位置** 首先,jmx-...
第四章“Securing applications”深入讨论了应用程序的安全性问题,包括身份验证、授权机制、SSL/TLS加密等技术,以及如何在JBoss应用服务器上实现这些安全措施,保护应用程序免受外部威胁。第五章“Securing web ...
- **安全性**:提供了基础的安全特性,如SSL/TLS支持,可以保护网络通信的安全。 **3. JBoss Web与JBoss AS的关系** - **集成环境**:JBoss AS(Application Server)是完整的Java EE应用服务器,而JBoss Web是其...
- **安全特性**:讲解JBoss AS 7提供的安全功能,如认证、授权和加密等,并指导如何在应用中实施这些安全措施。 ##### 5. 部署与管理 - **部署过程**:详细描述如何将开发完成的应用程序部署到JBoss AS 7上,并...
5. **安全管理**:JBoss的安全特性包括用户角色、认证和授权。这部分会讲解如何设置用户、角色,以及如何使用JaAS(Java Authentication and Authorization Service)来保护应用。 6. **事务管理**:JBoss支持JTA...