keytool を使用して証明書を作成しました。
keytool -genkey -alias tomcat -keyalg RSA
それをエクスポートしてキーストアにインポートしました:
keytool -export -alias tomcat name.crt
keytool -import -file name.crt
keytool -list を実行すると、2 つのエントリがあります。
tomcat, Sept 15, 2010, keyEntry,
Certificate fingerprint (MD5): ...
mykey, Sept 17, 2010, trustedCertEntry
Certificate fingerprint (MD5):...
両方のエントリのフィンガープリントが同じであることに注意してください。
.keystore ファイルを指すように server.xml を構成しました
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
keystoreFile="${user.home}/.keystore" keystorePass="changeit"
clientAuth="false" sslProtocol="TLS" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />
しかし、Java アプリでアクションを実行すると、Tomcat ログに次のように表示されます。
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate found
...
sun.security.validator.ValidatorException: No trusted certificate found
実行する必要がある他の構成はありますか?