簡而言之,
- 您可以創建自己的自簽名證書。這不會保護您的應用程序免受各種攻擊,但您的通信將被加密。如果你在一些內聯網上運行它,我認爲這是一個合理的解決方案。
- 見下文
- 見#1
- 見#2
要生成服務器證書,你可以這樣做
/opt/jdk1.7.0_40/bin/keytool -genkey -alias tomcat -keypass mypassword -keystore keystore.key -storepass mypassword -keyalg RSA
然後你可能需要添加一些步驟來配置您的網絡服務器。您還沒有指定任何,但如果你是使用Tomcat,你會添加一些像這樣server.xml中
<Connector
port="8443"
SSLEnabled="true"
maxThreads="150"
scheme="https"
secure="true"
clientAuth="false"
sslProtocol="TLS"
keystoreFile="/path.to.your.keystore/keystore.key"
keystorePass="mypassword" />
要在客戶端導入證書,你可以打開用firefox登錄頁面,右鍵單擊頁面並打開「查看頁面信息」,然後轉到「安全」選項卡,然後單擊「查看證書」,單擊「詳細信息」,然後單擊「導出」。
默認是X.509 PEM,這是確定的。讓我們假設你已經將文件保存爲「TomcatUser.pem.x509」,您可以選擇存儲在格式的Java能夠理解一個密鑰證書,就這樣
/opt/jdk1.7.0_40/bin/keytool -import -file TomcatUser.pem.x509 -keystore ~yourUser/MyLocalKeypass -storepass xyz
最後,您的客戶將需要像這樣
System.setProperty("javax.net.ssl.trustStore","~yourUser/MyLocalKeypass");
System.setProperty("javax.net.ssl.trustStorePassword","xyz");
來源
2014-02-02 15:37:50
Leo
感謝您抽出寶貴時間來回答,獅子座。 – felixthecar
我花了很多時間自己弄清楚這個路線圖,沒有理由浪費同一時間;-) – Leo