這是我在這個論壇的第一個問題,請提前接受我對任何錯誤的道歉。 我在使用SSL和APR配置tomcat時遇到問題。tomcat ssl apr x509
上下文: tomcat 7,Java 7,OpenSSL,一對有效的x509證書。
我的HTTPS連接器:
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true"
SSLVerifyClient="require" SSLVerifyDepth="3"
SSLCertificateFile="${catalina.home}/security/server.pem"
SSLCertificateKeyFile="${catalina.home}/security/server.key"
SSLCertificateChainFile="${catalina.home}/security/trust.pem"
SSLCACertificateFile="${catalina.home}/security/trust_ca.pem"
/>
PKI樹:
ROOT -> CA_intermediate -> CA4Servers -> server (tomcat)
-> serv2Cert
-> CA4People -> people1Cert
與兩兩證一臺Windows PC客戶端在Windows密鑰庫(Windows的MY):people1Cert和serv2Cert
trust.pem include ROOT,CA_int中間,CA4Servers和tomcat pem編碼的公鑰。 trust_ca.pem all of trust.pem but tomcat cert。
我想要什麼: 轉到https://tomcat.server:8443/
,瀏覽器會顯示我一個證書的證書選擇對話框:serv2Cert,我選擇它,進入網頁成功地。如果我選擇另一個證書,服務器會給我一個錯誤頁面。
我的問題: 當我拿到證書選擇器對話框時,我看到兩個證書:serv2Cert和people1Cert(?)。他們都讓我去網頁! 如果我改變SSLVerifyDepth或trust_ca.pem到客戶端證書限制爲僅serv2Cert,我得到這樣未知CA或未知的證書
我已經與一些SSLVerifyDepth值試圖像1,2 SSL錯誤, 3,4。只有「3」才能讓我登錄到服務器。如果我從trust_ca.pem中刪除了所有CA證書,但刪除了ROOT,則讓我使用兩個客戶端證書(people1Cert和serv2Cert)進行登錄。
我會對此有所幫助,對不起我的可憐的英語,提前謝謝你。最好的祝福。