Tomcat 5.5 通配符SSL證書(shū)詳細(xì)操作指南
Tomcat 5.5 通配符SSL 證書(shū)詳細(xì)操作指南(圖文)本文講述如何生成通配符SSL 證書(shū), 以及如何在Tomcat 中進(jìn)行配置SSL 并映射單個(gè)域名到指定的應(yīng)用, 以及如何同時(shí)啟用HTTPS
Tomcat 5.5 通配符SSL 證書(shū)詳細(xì)操作指南(圖文)
本文講述如何生成通配符SSL 證書(shū), 以及如何在Tomcat 中進(jìn)行配置SSL 并映射單個(gè)域名到指定的應(yīng)用, 以及如何同時(shí)啟用HTTPS 和HTTP 的端口監(jiān)聽(tīng).
環(huán)境: Windows XP / Cent OS 5, Tomcat 5.5, JDK 1.5/1.6
劉長(zhǎng)炯 beansoft@126.com
2009-10-16
,目錄
1. 注冊(cè)/創(chuàng)建需要的域名..............................................................................................................3
2. 生成服務(wù)器證書(shū).......................................................................................................................3
3. 修改Tomcat 的server.xml 啟用SSL...........................................................................................6
4. 啟動(dòng)服務(wù)器...............................................................................................................................7
5. 使用瀏覽器進(jìn)行訪問(wèn)測(cè)試并導(dǎo)入信任證書(shū)...........................................................................7
6. 將www.beansoft.net 和bbs.beansoft.net 映射到單獨(dú)的Web 應(yīng)用.........................................14
7. 附錄.........................................................................................................................................14
,1. 注冊(cè)/創(chuàng)建需要的域名
可注冊(cè)購(gòu)買域名或者在本機(jī)創(chuàng)建虛擬域名, 例如本文作者通過(guò)修改Hosts 文件創(chuàng)建了兩個(gè)二級(jí)域名: www.beansoft.net 和 bbs.beansoft.net, 如下圖所示:

2. 生成服務(wù)器證書(shū)
使用JDK 自帶的KeyTool 工具生成通配符證書(shū), 打開(kāi)控制臺(tái), 轉(zhuǎn)向 Tomcat所在目錄, 執(zhí)行下面的命令: cd E:Javaapache-tomcat-5.5.27
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore -validity 3600
, 如下圖所示:
,
注意交互過(guò)程:
您的名字與姓氏是什么?
[Unknown]: *.beansoft.net
您的組織單位名稱是什么?
[Unknown]: BeanSoft@126.com
您的組織名稱是什么?
[Unknown]: BeanSoft Java Blog
您所在的城市或區(qū)域名稱是什么?
[Unknown]: Beijing
您所在的州或省份名稱是什么?
[Unknown]: Beijing
該單位的兩字母國(guó)家代碼是什么
[Unknown]: cn
CN=*.beansoft.net, OU=BeanSoft@126.com, O=BeanSoft Java Blog, L=Beijing, ST=Beij ing, C=cn 正確嗎?
[否]: y
名字與姓氏, 也就是CN, 必須輸入和服務(wù)器一致的域名(如www.beansoft.net) 或者真實(shí)IP, 否則這個(gè)證書(shū)在瀏覽器中顯示的時(shí)候, 一直會(huì)報(bào)警 名稱和站點(diǎn)不符合, 即使加入了受信任站點(diǎn)也無(wú)濟(jì)于事. 通配符的域名證書(shū)輸入 *.beansoft.net 即可.
執(zhí)行完畢后, 會(huì)在當(dāng)前目錄出現(xiàn)一個(gè)文件 server.keystore. 如下圖所示:
,
3. 修改Tomcat 的server.xml 啟用SSL 修改TOMCAT_HOMEconfserver.xml, 找到如下的定義:
maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" /> 在后面添加一個(gè)新的定義: 使用的文件就是 server.keystore, 密碼要和創(chuàng)建證書(shū)時(shí)保持一致. 需要注意的是我這里只給出了必填的選項(xiàng), 其它參數(shù)如 maxHttpHeaderSize 等都可在此處進(jìn)行配置. 這時(shí)候, 服務(wù)器已經(jīng)同時(shí)啟用了HTTP 和HTTPS, 如果不需要HTTP 服務(wù), 只需要注釋掉8080的Connector 定義即可. 為了便于對(duì)比, 下面列出完整的server.xml 的最小配置: type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" /> resourceName="UserDatabase" /> 4. 啟動(dòng)服務(wù)器 采用上面的配置, 啟動(dòng)Tomcat 服務(wù)器, 可看到日志輸出如下: 2009-10-16 10:58:59 org.apache.coyote.http11.Http11BaseProtocol init 信息: Initializing Coyote HTTP/1.1 on http-80 2009-10-16 10:59:00 org.apache.coyote.http11.Http11BaseProtocol init 信息: Initializing Coyote HTTP/1.1 on http-443 2009-10-16 10:59:00 org.apache.catalina.startup.Catalina load 信息: Initialization processed in 734 ms 2009-10-16 10:59:00 org.apache.catalina.core.StandardService start 信息: Starting service Catalina 2009-10-16 10:59:00 org.apache.catalina.core.StandardEngine start 信息: Starting Servlet Engine: Apache Tomcat/5.5.27 2009-10-16 10:59:00 org.apache.catalina.core.StandardHost start 信息: XML validation disabled 2009-10-16 10:59:01 org.apache.coyote.http11.Http11BaseProtocol start 信息: Starting Coyote HTTP/1.1 on http-80 2009-10-16 10:59:01 org.apache.coyote.http11.Http11BaseProtocol start 信息: Starting Coyote HTTP/1.1 on http-443 2009-10-16 10:59:01 org.apache.catalina.startup.Catalina start 信息: Server startup in 719 ms 服務(wù)器成功啟動(dòng), 同時(shí)監(jiān)聽(tīng)了普通的HTTP 以及HTTPS 服務(wù). 5. 使用瀏覽器進(jìn)行訪問(wèn)測(cè)試并導(dǎo)入信任證 書(shū) 我們這里使用的瀏覽器是IE8. 下面首先訪問(wèn)HTTP 服務(wù), 沒(méi)有任何問(wèn)題: 接著嘗試HTTPS 服務(wù): 或者 , 兩個(gè)地址都可以看到證書(shū)報(bào)警 : 點(diǎn)擊 繼續(xù)瀏覽此網(wǎng)站(不推薦) 。 繼續(xù)瀏覽此頁(yè)面. 那么如何避免以后訪問(wèn)時(shí)再次報(bào)警呢? 有兩個(gè)辦法, 第一個(gè)辦法是去購(gòu)買正規(guī)機(jī)構(gòu)頒發(fā)的數(shù)字證書(shū), 需要Money; 第二個(gè)辦法就是導(dǎo)入證書(shū). 此時(shí)的瀏覽器窗口如下所示 : 點(diǎn)擊 地址欄 右側(cè)的證書(shū)錯(cuò)誤, 可彈出證書(shū)錯(cuò)誤的詳情, 接下來(lái)點(diǎn)擊 “查看證書(shū) ”, 再點(diǎn)擊下方的 “安裝證書(shū)” 按鈕, 彈出安裝證書(shū)向?qū)? 點(diǎn)擊下一步, 出現(xiàn)證書(shū)存儲(chǔ)對(duì)話框: 默認(rèn)選中的是上方的單選鈕 自動(dòng)選擇證書(shū)存儲(chǔ)區(qū), 我們需要把它放入受信任的系統(tǒng)證書(shū)中區(qū), 因此需要點(diǎn)擊下方的單選鈕 將所有的證書(shū)放入下列存儲(chǔ)區(qū), 并點(diǎn)擊瀏覽按鈕, 彈出如下的向?qū)?




