让tomcat支持https/ssl

◆ set path=C:/Program Files/Java/jdk1.6.0_16/bin
◆ 生成certificate keystore,windows生成的文件是.keystore,在 Documents and
Settings/yourloginname目录下
(让输入的两个密码要一样,否则tomcat会说Cannot recover key)
D:/work/now>keytool -genkey -alias tomcat -keyalg RSA
キーストアのパスワードを入力してください:
キーストアのパスワードが短過ぎます - 6 文字以上にしてください。
キーストアのパスワードを入力してください:
新規パスワードを再入力してください:
姓名を入力してください。
[Unknown]: test
組織単位名を入力してください。
[Unknown]: test
組織名を入力してください。
[Unknown]: test
都市名または地域名を入力してください。
[Unknown]: china
州名または地方名を入力してください。
[Unknown]: china
この単位に該当する 2 文字の国番号を入力してください。
[Unknown]: cn
CN=test, OU=test, O=test, L=china, ST=china, C=cn でよろしいですか?
[no]: yes

の鍵パスワードを入力してください。
(キーストアのパスワードと同じ場合は RETURN を押してください):
新規パスワードを再入力してください:
◆ 修改tomcat安装目录下的conf/server.xml
查找<Connector port=”8443” protocol=”HTTP/1.1” SSLEnabled=”true”,将它的注释解开,
如果刚才输入的密码不是changit的话,在其中追加keystorePass=”password”,可以使用keystoreFile=”${user.home}/.keystore”来设置store文件的位置
◆ 重启tomcat,输入https://localhost:8443/youwebsite,ok(浏览器会提示证明书无效,但是可以不管,点击继续浏览)
◆ 其他
tomcat支持的keystore格式:JKS(可以用keytool生成), PKCS11 or
PKCS12(一个internet标准,可以和OpenSSL, Microsoft’s Key-Manager进行互操作)
public key cryptography: http://en.wikipedia.org/wiki/Public_key_cryptography
ssl or tls: http://en.wikipedia.org/wiki/Transport_Layer_Security
一般来说它的作用是让client感觉到了和自己交流的server是可信赖的
域名注册商: http://en.wikipedia.org/wiki/Domain_name_registrar
http://java.sun.com/j2se/1.3/docs/tooldocs/win32/keytool.html
http://www.pramati.com/docstore/1230006/help/ops/sec_pkcs.htm

tomcat支持ssl的方式:jsse(6.0不需要下载额外的包),apr(需要对不同的系统下载不同的本地ssl实现)
http://tomcat.apache.org/tomcat-5.5-doc/apr.html

open solaris下,以root运行keytool(它可以生成一个自认证的文件,作用只是用来加密交流数据的),生成的文件位于/root下