jboss5.0安装配置总结

第1章 Jboss 配置https 协议1.1 生成keystore 文件用keytool 生成server.keystore 文件:进入命令行C:Documents and Settingsnew>

第1章 Jboss 配置https 协议

1.1 生成keystore 文件

用keytool 生成server.keystore 文件:

进入命令行

C:Documents and Settingsnew>

keytool -genkey -alias tc-ssl -keyalg RSA -keystore c:server.keystore -validity 3650 会提示要求输入私钥信息。

生成完后放入jboss安装目录server�faultconf下

1.2 修改deployjboss-web.deployerserver.xml文件

clientAuth="false" sslProtocol="TLS"

keystoreFile="${jboss.home.dir}/server.keystore"

keystorePass="ronglian" keystoreType="jks" />

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

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

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

,

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

点击查看证书

是否继续选择是。

,

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

问题:访问原来的也同样可以访问页面

1.4 http 自动跳转到https (修改web.xml 文件,配置一个

HtmlAdaptor )。添加代码:

HtmlAdaptor

An example security config that only allows users with

the role JBossAdmin to access the HTML JMX console web

application

/

Protection should be CONFIDENTIAL

CONFIDENTIAL

再次启动JBOSS 服务器,访问

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

,

1.5 相关信息

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

SSL 协定的另一个重要方面是认证(Authentication)。这就是说,在你开始试图通过一个安全连接与一个web 服务器交流的时候,这个服务器会要求你的浏览器出示一组证件,通过“鉴定”的方式来证明这就是你所声明的网站。

在某些情况下,服务器还会要求你的web 浏览器的认证书,证明你就是你所说的那个人。这就是所知的“客户认证”,尽管实际情况中,更多地用在商务-对-商务(B2B)交易,而不是对个人用户。

但大多数有SSL 功能的web 服务器不要求客户认证(Client Authentication)。

1.5.2 证书

为了能实施SSL ,一个web 服务器对每个接受安全连接的外部接口(IP 地址) 必须要有相应的证书(Certificate)。关于这个设计的理论是一个服务器必须提供某种合理的保证以证明这个服务器的主人就是你所认为的那个人。这个证书要陈述与这个网站相关联的公司,以及这个网站的所有者或系统管理员的一些基本联系信息。

,

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

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

1.5.4 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 地址,否则,客户端会弹出警告窗口。" 站点不符" 另外,因为是自签名的证书,客户端会弹出“非信任的机构颁发”,这时可以点击“继续”,或者安装该证书,确认自己的信任。

1.5.5 申请签发证书

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

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

keytool -genkey -keyalg rsa -keystore -alias

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

,

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

keytool –certreq –file certreq.csr –keystore -alias

请把生成的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.5binkeytool –import –trustcacerts –keystore -alias -file cert.cer

,

第2章 Jboss 配置超时时间与端口

2.1 Jboss 超时时间设置 修改jboss-5.0.0.Beta4server�fault�ployers

jbossweb.deployerconf目录下的web.xml 文件

30

2.2 Jboss 修改端口

修改jboss-5.0.0.Beta4server�fault�ployersjbossweb.deployer目录下的server.xml 文件

port="8090" address="${jboss.bind.address}"

connectionTimeout="20000" redirectPort="8443" />

port="8443" address="${jboss.bind.address}"

scheme="https" secure="true" clientAuth="false" keystoreFile="${jboss.home.dir}/server.keystore"

keystorePass="ronglian" keystoreType="jks" sslProtocol = "TLS" />

,

第3章 Jboss 配置数据源 Jboss 有一个默认的数据源 DefaultDS ,他使用 Jboss 内置的 HSQLDB 数据库。实际应用中你可能使用不同的数据库,如 MySql 、 MsSqlServer 、 Oracle 等。各种数据库的数据源配置模版你可以在 [Jboss 安装目

录 ]docsexamplesjca 目录中找到,默认名称为:数据库名 -ds.xml 。不管你使用那种数据库都需要把他的驱动类 Jar 包放置在 [Jboss 安装目录 ]server�faultlib 目录下,放置后需要启动 Jboss 服务器。 本实例使用的数据库是 mysql-5.0.22 和 Ms Sql Server2000 ,使用驱动 Jar 包如下:

Mysql : mysql-connector-java-3.1.13-bin.jar Ms Sql Server2000 : msbase.jar, mssqlserver.jar, msutil.jar 。 下面介绍 Mysql 和 Ms Sql Server2000 的数据源配置,数据源配置文件的取名格式必须为 xxx–ds.xml , 如 :mysql-ds.xml , mssqlserver-ds.xml , oracle-ds.xml 。

数据源文件配置好后需要放置在 [jboss 安装目录 ]/server/ config-name /deploy 目录下 , 本教程采用的配置名为: default , 所以路径为 [jboss 安装目录 ]/server/default/deploy 目录

3.1 MySql 数据源的配置

下面定义一个名为 DefaultMySqlDS 的 Mysql 数据源,连接数据库为 zhaosoft ,数据库登录用户名为 root ,密码为 admin ,数据库驱动类为 org.gjt.mm.mysql.Driver 。大家只需修改数据库名及登录用户名密码就可以直接使用。

mysql-ds.xml

zhaosoft

jdbc:mysql://localhost:3306/foshanshop?useUnicode=true&characterEncoding=GBK

org.gjt.mm.mysql.Driver root

admin

org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter

mySQL

,

3.2 Ms Sql Server2000 数据源的配置 下面定义一个名为 MSSQLDS 的 Ms Sql Server 数据源,连接数据库为 foshanshop ,数据库登录用户名为 sa ,密码为 sa ,数据库驱动类为

com.microsoft.jdbc.sqlserver.SQLServerDriver 。大家只需修改数据库名及登录用户名、密码就可以直接使用。

mssqlserver-ds.xml

zhaosoft

jdbc:microsoft:sqlserver://

localhost:1433;DatabaseName=foshanshop

com.microsoft.jdbc.sqlserver.SQLServerDriver

sa

sa

MS SQLSERVER2000

3.3 Oralce9i 数据源的配置

下面定义一个名为 OracleDS 的 Oracle9i 数据源,连接数据库为 FS ,数据库登录用户名为 root ,密码为 admin , 数据库驱动类为

oracle.jdbc.driver.OracleDriver 。大家只需修改数据库名及登录用户名密码就可以直接使用。

oracle-ds.xml

zhaosoft

jdbc:oracle:thin:@nd:1521:FS oracle.jdbc.driver.OracleDriver root

admin

true

标签: