tomcat 配置https (單向認證)


1.單向認證,就是傳輸的數據加密過了,但是不會校驗客戶端的來源
2.雙向認證,如果客戶端瀏覽器沒有導入客戶端證書,是訪問不了web系統的,找不到地址
如果只是加密,單向就行
如果想要用系統的人沒有證書就訪問不了系統的話,就采用雙向認證

第一步:為服務器生成證書

使用keytool為Tomcat生成證書,假定目標機器的域名是“localhost”,keystore文件存放在 “e:\\tomcat.keystore”,口令為“123456”,使用如下命令生成:

keytool -genkey -alias tomcat -keyalg RSA -keysize 2048 -keystore e:\tomcat.keystore -storepass 123456 -keypass 123456

截圖如下:

 

第二步:由於是單向認證,沒有必要生成客戶端的證書,直接進入目錄:E:\apache-tomcat-6.0.41\conf  下 配置 server.xml文件

按照下面修改 配置文件。

 

 <!-- 原配置文件內容  -->
<!--
    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" />
   

 

 

<!-- 改后 配置文件內容  -->
<
Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="e:\\tomcat.keystore" keystorePass="123456" />

<Connector>配置里的一些屬性參數如下表:

屬 性 描  述
clientAuth 如果設為true,表示Tomcat要求所有的SSL客戶出示安全證書,對SSL客戶進行身份驗證
keystoreFile 指定keystore文件的存放位置,可以指定絕對路徑,也可以指定相對於<CATALINA_HOME> (Tomcat安裝目錄)環境變量的相對路徑。如果此項沒有設定,默認情況下,Tomcat將從當前操作系統用戶的用戶目錄下讀取名為 “.keystore”的文件。
keystorePass 指定keystore的密碼,如果此項沒有設定,在默認情況下,Tomcat將使用“changeit”作為默認密碼。
sslProtocol 指定套接字(Socket)使用的加密/解密協議,默認值為TLS,用戶不應該修改這個默認值。
ciphers 指定套接字可用的用於加密的密碼清單,多個密碼間以逗號(,)分隔。如果此項沒有設定,在默認情況下,套接字可以使用任意一個可用的密碼。

 

 

第三步:驗證

訪問地址 https://localhost:8443/ 看到如下效果,說明驗證成功。

驗證成功后 可以查看證書的詳細信息。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM