tomcat 6のhttps双方向認証

2252 ワード

1.サーバ側証明書の生成
keytool -genkey -keyalg RSA -dname "cn=localhost,ou=sango,o=none,l=china,st=beijing,c=cn" -alias server -keypass password -keystore server.jks -storepass password -validity 3650

cn=localhost配置されたドメイン名に基づいて決定
-alias server証明書名
-keypass password証明書パスワード
-keystore server.jks証明書格納ファイル名
-storepass passwordファイルのパスワード
-validity 3650有効時間(単位:日)
 
2、クライアント証明書の生成
keytool -genkey -keyalg RSA -dname "cn=sango,ou=sango,o=none,l=china,st=beijing,c=cn" -alias custom -storetype PKCS12 -keypass password -keystore custom.p12 -storepass password -validity 3650 

-alias custom証明書名
-storetype PKCS 12証明書タイプ
-keypass password証明書パスワード
-keystore custom.p 12証明書格納ファイル名
-storepass password証明書ファイルパスワード
-validity 3650有効時間(単位:日)
 
3.サーバの信頼証明書ファイルの生成
まずクライアント証明書をcerファイルにエクスポートします
keytool -export -alias custom -file custom.cer -keystore custom.p12 -storepass password -storetype PKCS12 -rfc 

-aliasクライアント証明書別名、生成時の別名に対応
-file custom.cerエクスポートcerファイル名
-keystore custom.p 12クライアント証明書ファイルパス
-storepass passwordクライアント証明書アクセスパスワード
 
生成したcetファイルを信頼できるファイルにインポートします
keytool -import -v -alias custom -file custom.cer -keystore truststore.jks -storepass password 

-alias custom信頼ファイルにインポートされた証明書別名、任意の値
-file custom.cerクライアントのcetファイルパス
-keystore truststore.jksが信頼するファイルの保存パスは、存在しない場合は新しいファイルが生成されます.そうしないと、既存のファイルに追加されます.
-storepass password信頼ファイルのパスワード
 
4.tomcatプロファイルserverを変更する.xml
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"  
    maxThreads="150" scheme="https" secure="true"  
    clientAuth="true" sslProtocol="TLS"  
    keystoreFile="D:/server.jks" keystorePass="password"  
    truststoreFile="D:/truststore.jks" truststorePass="password"  
/> 
 5.クライアント証明書customをインポートp 12ブラウザへ、ファイルインポートをダブルクリック可能
注意:個人のラベルの下にエクスポートする必要があります.他のラベルの下では無効です.
 
参照先:http://ss3ex.iteye.com/blog/607674