`

Jboss配置HTTPS

 
阅读更多
Jboss配置说明
配置jboss的HTTP请求走SSL(HTTPS协议)

l         生成keystore 文件

用keytool生成server.keystore文件:

进入命令行

C:\Documents and Settings\new>

keytool -genkey -alias tc-ssl -keyalg RSA -keystore c:\server.keystore -validity 3650

会提示要求输入私钥信息。



生成完后放入\jboss安装目录\server\default\conf下

l         修改D:\jboss-4.2.2.GA\server\default\deploy\jboss-web.deployer\server.xml文件

    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"

               maxThreads="150" scheme="https" secure="true"

               clientAuth="false" sslProtocol="TLS"

               keystoreFile="conf/server.keystore" keystorePass="123456"

               keystoreType="jks"

     />

去掉该段注释,添加代码(红色标注部分)

keystoreFile后面的内容是server.keystore文件的相对路径。

keystorePass后面的内容是生成文件是的密码。

l         修改完成后启动JBOSS,访问

https://127.0.0.1:8443/teamnet/project/login.jsp



点击查看证书



是否继续选择是。



成功访问,注意端口号为配置文件中的8443,可以根据需要修改。

问题:访问原来的http://127.0.0.1:8080/teamnet/project/login.jsp也同样可以访问页面

l         修改web.xml文件,配置一个HtmlAdaptor。添加代码:

    <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> -->
        <user-data-constraint>
            <description>Protection should be CONFIDENTIAL</description>
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
        </user-data-constraint>
    </security-constraint>

再次启动JBOSS服务器,访问http://127.0.0.1:8080/teamnet/project/login.jsp






可以看到访问http已经被自动的转到https协议进行访问。



l         其他相关知识:
SSL 或者Secure Socket Layer,是一种允许web浏览器和web服务器通过一个安全的连接进行交流的技术。这意味着将被发送的数据在一端被翻译成密码,传送出去,然后在另一端解开密码,再进行处理。这是一个双向的过程,也就是浏览器和服务器都需要在发送数据之前对它们进行加密。

SSL协定的另一个重要方面是认证(Authentication)。这就是说,在你开始试图通过一个安全连接与一个web服务器交流的时候,这个服务器会要求你的浏览器出示一组证件,通过“鉴定”的方式来证明这就是你所声明的网站。
在某些情况下,服务器还会要求你的web浏览器的认证书,证明你就是你所说的那个人。这就是所知的“客户认证”,尽管实际情况中,更多地用在商务-对-商务(B2B)交易,而不是对个人用户。
但大多数有SSL功能的web服务器不要求客户认证(Client Authentication)。
证书
为了能实施SSL,一个web服务器对每个接受安全连接的外部接口(IP 地址)必须要有相应的证书(Certificate)。关于这个设计的理论是一个服务器必须提供某种合理的保证以证明这个服务器的主人就是你所认为的那个人。这个证书要陈述与这个网站相关联的公司,以及这个网站的所有者或系统管理员的一些基本联系信息。

这个证书由所有人以密码方式签字,其他人非常难伪造。对于进行电子商务(e-commerce)的网站,或其他身份认证至关重要的任何商业交易,认证书要向大家所熟知的认证权威(Certificate Authority (CA))如VeriSign或Thawte来购买。这样的证书可用电子技术证明属实。实际上,认证权威单位会担保它发出的认证书的真实性,如果你信任发出认证书的认证权威单位的话,你就可以相信这个认证书是有效的。



Java 生成证书
在许多情况下,认证并不是真正使人担忧的事。系统管理员或许只想要保证被服务器传送和接收的数据是秘密的,不会被连接线上的偷窃者窃到。庆幸的是, Java提供相对简单的被称为keytool的命令行工具,可以简单地产生“自己签名”的证书。自己签名的证书只是用户产生的证书,没有正式在大家所熟知 的认证权威那里注册过,因此不能确保它的真实性。但却能保证数据传输的安全性。

keytool生产非签发证书
keytool -genkey -alias tomcat -keyalg RSA -keystore d:\tomcat.keystore

在此命令中,keytool是JDK自带的产生证书的工具。把RSA运算法则作为主要安全运算法则,这保证了与其它服务器和组件的兼容性。

这个命令会在用户的d:\tomcat.keystore产生一个叫做"tomcat.keystore" 的新文件。你会被要求出示关于这个认证书的一般性信息,如公司,联系人名称,等等。这些信息会显示给那些试图访问你程序里安全网页的用户,以确保这里提供 的信息与他们期望的相对应。你会被要求出示密钥(key)密码,也就是这个认证书所特有的密码(与其它的储存在同一个keystore文件里的认证书不 同)。你必须在这里使用与keystore密码相同的密码。(目前,keytool会提示你按ENTER键会自动帮你做这些)。



如果一切顺利,你现在就拥有了一个可以被你的服务器使用的有认证书的keystore文件。

注意:
    提示名字和姓氏时,应输入服务器的DNS域名或者IP地址,否则,客户端会弹出警告窗口。"站点不符"
    另外,因为是自签名的证书,客户端会弹出“非信任的机构颁发”,这时可以点击“继续”,或者安装该证书,确认自己的信任。

申请签发证书
自己生产并签名的证书相对用户使不可信的,也是不安全的,所以一般我们需要向证书发放机构去购买证书,或者获取免费证书,下面是正式的申请流程和在tomcat中的配置,jboss或者apache请参阅相关配置。

1) 生成私钥和公钥对(Keystore) Create a Keystore

keytool -genkey -keyalg rsa -keystore <keystore_filename> -alias <alias_name>

Keytool 会提示您输入私钥密码、您的姓名(Your name,填单位网址)、您的部门名称、单位名称、所在城市、所在省份和国家缩写(中国填:CN,其他国家填其缩写),单位名称一定要与证明文件上的名称 一致,部门名称(OU)可以不填。除国家缩写必须填CN外,其余都可以是英文或中文。请一定要保存好您的私钥和私钥密码。WoTrust不会要求您提供私 钥文件!

(2) 生成证书请求文件(CSR) Generate a CSR

keytool –certreq –file certreq.csr –keystore <keystore_filename> -alias <alias_name>

请把生成的certreq.csr 文件复制和粘贴到Thawte证书在线申请页面的CSR文本框中,或直接发给WoTrust,请等待1-2个工作日后颁发证书。



(3) 导入签名证书 Import Thawte Codesigning Certificate

一旦Thawte验证了您的真实身份,将会颁发证书给您。您需要到Thawte网站下载您的证书,请选择 PKCS #7 格式证书(PKCS #7 Certificate Chain),此证书格式含有您的证书和根证书链,Keytool要求此格式证书,请把证书保存到您的电脑中。

请使用如下命令导入您的证书到keystore 中,这里假设您的证书名称为:cert.cer,请同时指明详细路径,一旦成功导入证书,请及时备份您的keystore文件:

c:\jdk1.5\bin\keytool –import –trustcacerts –keystore <keystore_filename> -alias <alias_name> -file cert.cer
分享到:
评论

相关推荐

    Jboss配置https

    Jboss 配置 HTTPS protocol Jboss 配置 HTTPS 协议是为了在 Web 应用传输过程中,保护数据的安全性。HTTPS 协议使用密钥对数据进行加密,从而防止数据在传输过程中的泄露。 首先,需要使用 keytool 工具生成 ...

    jboss配置https环境

    JBoss,作为一个流行的Java应用服务器,提供了配置HTTPS(安全套接层超文本传输协议)的能力,以确保数据传输的加密和安全性。以下是配置JBoss服务器使用HTTPS的详细步骤: 1. **生成Keystore文件**: 使用Java...

    eclipse+Jboss配置远程调试

    3. **启动JBoss**:完成上述配置后,可以通过运行`E:\Jboss7_Daban\bin\standalone.bat`(Windows)或`E:\Jboss7_Daban\bin\standalone.sh`(Linux)来启动JBoss。 #### 五、配置Eclipse以连接远程调试 1. **创建...

    windows环境下Jboss as 7配置Https

    Windows 环境下 JBoss AS 7 配置 HTTPS 在 Windows 环境下,配置 JBoss AS 7 的 HTTPS 需要按照特定的步骤进行。下面将详细介绍配置 HTTPS 的过程。 生成服务器端证书文件 首先,需要使用 JDK 自带的工具制作 ...

    Jboss配置过程图

    总结,JBoss配置涉及多个层面,包括环境准备、启动/停止、配置文件修改、应用部署、日志管理、安全管理、使用管理控制台和CLI工具等。理解并掌握这些知识点,将有助于你有效地管理和运维JBoss应用服务器。

    linux 下 配置JBoss6.0+JDK7.0

    在Linux环境下配置JBoss6.0与JDK7.0是一项关键的任务,因为这两个组件是许多企业级Java应用的基础。JBoss是一个流行的开源应用服务器,它支持Java EE规范,而JDK则是运行Java应用程序和应用服务器所必需的开发工具包...

    JBOSS4.2 基本配置(全)

    在`server/default/conf/server.xml`中,你可以配置HTTPS监听器,使用自签名证书或导入权威CA的证书来启用SSL。 5. **控制台登陆安全**:JBOSS管理控制台提供了图形化的配置界面,但默认是不安全的。在`server/...

    JBoss在MyEclipse中的配置及说明

    - **Server Configuration**:这里可以配置JBoss的特定配置文件,如`standalone.xml`或`domain.xml`,以及相关的JVM参数。 - **Classpath**:定义服务器启动时的类路径,通常包括应用程序的库和依赖。 通过以上...

    JBOSS7配置及管理员手册

    《JBOSS7配置及管理员手册》:深入解析与实操指南 ### JBOSS各主要版本特性概览 #### JBOSS4特性 - **模块化架构**:引入了更为灵活的模块化设计,提高了应用程序的可扩展性和可维护性。 - **企业级功能**:加强了...

    JBOSS 7 基于HTTPS双向SSL认证

    在本文中,我们将详细介绍 JBOSS 7 如何配置 HTTPS 双向 SSL 认证。 一、生成服务器证书 首先,我们需要使用 keytool 工具生成服务器证书。该工具是 JDK 中的一部分,用于生成和管理证书。使用以下命令生成服务器...

    jboss5.0.1GA端口配置

    ### jboss5.0.1 GA端口配置详解 #### 一、背景介绍 JBoss AS 5.0.1 GA(General Availability)是JBoss应用服务器的一个版本,广泛应用于企业级Java EE应用程序的开发与部署。在多服务环境下,可能会遇到端口冲突的...

    JBoss7配置指南及管理员手册.doc

    ### JBoss7配置指南及管理员手册 #### JBoss7配置说明及核心管理概念 JBoss7作为一款先进的Java应用服务器,其配置与管理对于确保应用的高效稳定运行至关重要。本文档将详细介绍JBoss7的核心配置及管理概念,帮助...

    Jboss-EAP-6.4配置web工程,修改根目录,修改内存,修改端口

    找到相关的端口配置(如HTTP、HTTPS或管理接口的端口),并将它们更改为所需的值(例如,将默认的8080端口更改为8082)。保存更改后,重启JBoss服务以应用新的端口设置。 内存调整是优化服务器性能的关键步骤。可以...

    JBoss5配置相机

    【JBoss5配置详解】 JBoss Application Server 5(简称JBoss AS 5)是一款开源的Java EE应用服务器,由Red Hat公司维护。它提供了一个用于部署和管理企业级Java应用程序的平台。JBoss AS 5是基于EJB 3.0规范的,...

    jboss多开配置

    根据提供的标题、描述、标签及部分内容,我们可以推断出该文档主要讲述的是JBoss服务器的多实例配置方法。JBoss是一种流行的开源应用服务器,支持Java EE应用程序的部署和执行。多实例配置通常指的是在同一台物理...

    Apache+Jboss(Tomcat)集群配置

    Apache+Jboss(Tomcat)集群配置是一种常见的高可用性和负载均衡解决方案,它通过在前端部署Apache服务器,中间层配置多个Jboss或Tomcat应用服务器,后端连接统一的数据库来实现系统的扩展性和稳定性。以下是配置这个...

    nginx 与 jboss 配置http自动跳转https

    NULL 博文链接:https://zliguo.iteye.com/blog/2344573

    JBoss实战:服务器配置指南(JBoss in action)

    - **安全配置案例**: 通过配置HTTPS和用户认证来保障Web应用的安全性。 - **性能调优案例**: 如何利用工具诊断性能瓶颈,并针对性地调整配置以提升应用性能。 - **集群部署案例**: 实际操作步骤,展示如何在多台...

    一台机器部署多个jboss说明

    ### 一台机器部署多个JBoss服务器的配置方法 在企业级应用开发中,有时需要在同一台物理机器上部署多个JBoss应用服务器实例。这可能是出于性能测试、开发环境搭建或是资源利用等多种考虑因素。然而,在同一台机器上...

    修改jboss的默认端口

    总之,修改JBoss的默认端口是通过修改配置文件完成的,通常涉及`standalone.xml`或`domain.xml`。在多服务器环境或需要定制化设置时,这样的操作是必要的。使用批处理脚本自动化这个过程可以提高效率,特别是在有...

Global site tag (gtag.js) - Google Analytics