Tomcat中如何使用SSL(Secure Sockets Layer)
做法如下:
1 使用dos命令產生成密鑰文件
keytool -genkey -alias evaima -keyalg RSA -keystore evaima.keystore
evaima 可以改為自己想要使用的名稱
dos窗口顯示如下:
輸入keystore密碼:
再次輸入新密碼:
您的名字與姓氏是什麼?
[Unknown]: evaima ----這裡名稱要和主機全名一致.
您的組織單位名稱是什麼?
[Unknown]: NONE
您的組織名稱是什麼?
[Unknown]: NONE
您所在的城市或區域名稱是什麼?
[Unknown]: BEIJING
您所在的州或省份名稱是什麼?
[Unknown]: BEIJING
該單位的兩字母國家代碼是什麼
[Unknown]: CN
CN=evaima, OU=NONE, O=NONE, L=BEIJING, ST=BEIJING, C=CN 正確嗎?
[否]: y
輸入<evaima>的主密碼
(如果和 keystore 密碼相同,按回車):
在當前用戶的文檔目錄中生成了evaima.keystore文件.
2 使用dos命令生成csr請求文件,用於得到合法的證書
keytool -certreq -keyalg RSA -alias evaima -file evaima.csr -keystore evaima.keystore
3 訪問http://www.verisign.com/ssl/index.html
選擇free Trial
輸入相關內容,在輸入csr內容的頁面,
選擇Select Server Platform: Server not listed
選擇What do you plan to use this SSL Certificate for? (optional): Web server
Paste Certificate Signing Request (CSR), obtained from your server: 輸入第二步生成的csr文件的內容.
再輸入驗證密碼,隨便輸入就可以,只要最後別忘記點擊接收,系統就會往你註冊的郵箱發送一封信,信中就包含了合法的證書內容
4 從郵件中把證書內容拷貝到一個文件中,然後改文件名為cert.cer
5 按照郵件中的說明,安裝三個證書文件
keytool -import -alias intermediateCA -keystore evaima.keystore -trustcacerts -file b.cer
keytool -import -alias root -keystore evaima.keystore -file a.cer
[a.cer 文件為根證書,因為是測試使用,所以需要,如果真正買的話,應該不需要此證書.
b.cer 類似吧.我也不是很明白]
keytool -import -alias evaima -keystore evaima.keystore -trustcacerts -file cert.cer
6 更改tomcat的ssl配置
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
keystoreFile="C:/Documents and Settings/Administrator/evaima.keystore" keystorePass="evaima"
clientAuth="false" sslProtocol="TLS" />
7 如果做單點登錄,那還需要使用下面的語句在客戶端導入證書
keytool -import -keystore %JAVA_HOME%/jre/lib/security/cacerts -file cert.cer -alias server
以上在本地配置成功(WinXP+JDK1.6+Tomcat6)
原文網址 : http://evaima.iteye.com/blog/326708