Tomcat_5.5_ _通配符SSL證書詳細操作指南
Tomcat 5.5 通配符 SSL 證書詳細操作指南 (圖文) 本文講述如何生成通配符 SSL 證書, 以及如何在 Tomcat 中進行配置 SSL 并映射單個域名到指定的應
Tomcat 5.5 通配符 SSL 證書詳細操作指
南 (圖文) 本文講述如何生成通配符 SSL 證書, 以及如何在 Tomcat 中進行配置 SSL 并映射單個域名到
指定的應用, 以及如何同時啟用 HTTPS 和 HTTP 的端口監(jiān)聽.
環(huán)境: Windows XP / Cent OS 5, Tomcat 5.5, JDK 1.5/1.6
劉長炯 beansoft@126.com
2009-10-16
,目錄
1. 注冊/創(chuàng)建需要的域名..............................................................................................................3 2. 生成服務器證書.......................................................................................................................3 3. 修改Tomcat 的server.xml 啟用SSL ...........................................................................................6 4. 啟動服務器...............................................................................................................................7 5. 使用瀏覽器進行訪問測試并導入信任證書...........................................................................7 6. 將www.beansoft.net 和bbs.beansoft.net 映射到單獨的Web 應用.........................................14 7. 附錄.........................................................................................................................................14
,1. 注冊/創(chuàng)建需要的域名
可注冊購買域名或者在本機創(chuàng)建虛擬域名, 例如本文作者通過修改 Hosts 文件創(chuàng)建了兩個二 級域名: www.beansoft.net 和 bbs.beansoft.net, 如下圖所示:
2. 生成服務器證書
使用 JDK 自帶的 KeyTool 工具生成通配符證書, 打開控制臺, 轉向 Tomcat 所在目錄, 執(zhí)行 下面的命令:
cd E:Javaapache-tomcat-5.5.27
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore -validity 3600
, 如下圖所示:
,注意交互過程:
*.beansoft.net
名字與姓氏, 也就是 CN, 必須輸入和服務器一致的域名(如 www.beansoft.net) 或者真實 IP, 否則這個證書在瀏覽器中顯示的時候, 一直會報警 名稱和站點不符合, 即使加入了受信任 站點也無濟于事. 通配符的域名證書輸入 *.beansoft.net 即可.
執(zhí)行完畢后, 會在當前目錄出現一個文件 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" /> 在后面添加一個新的定義: 使用的文件就是 server.keystore, 密碼要和創(chuàng)建證書時保持一致. 需要注意的是我這里只給出了必填的選項, 其它參數如 maxHttpHeaderSize 等都可在此處 進行配置. 這時候, 服務器已經同時啟用了 HTTP 和 HTTPS, 如果不需要 HTTP 服務, 只需要注釋掉 8080 的 Connector 定義即可. 為了便于對比, 下面列出完整的 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. 啟動服務器 采用上面的配置, 啟動 Tomcat 服務器, 可看到日志輸出如下: 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 服務器成功啟動, 同時監(jiān)聽了普通的 HTTP 以及 HTTPS 服務. 5. 使用瀏覽器進行訪問測試并導入信任證 書 我們這里使用的瀏覽器是 IE8. 下面首先訪問 HTTP 服務, 沒有任何問題: 接著嘗試 HTTPS 服務: 或者 , 兩個地址都可以看到證書報警: 點擊 繼續(xù)瀏覽此網站(不推薦) 。 繼續(xù)瀏覽此頁面. 那么如何避免以后訪問時再次報警呢? 有兩個辦法, 第一個辦法是去購買正規(guī)機構頒發(fā)的 數字證書, 需要 Money; 第二個辦法就是導入證書. 此時的瀏覽器窗口如下所示: 點擊 地址欄 右側的證書錯誤, 可彈出證書錯誤的詳情, 接下來點擊 " 查看證書", 再點擊下方的 " 安裝證書" 按鈕, 彈出安裝證書向 導: 點擊下一步, 出現證書存儲對話框: 默認選中的是上方的單選鈕 自動選擇證書存儲區(qū), 我們需要把它放入受信任的系統(tǒng)證書中 區(qū) , 因此需要點擊下方的單選鈕 將所有的證書放入下列存儲區(qū), 并點擊瀏覽按鈕, 彈出如 下的向導: