實戰Tomcat配置SSL,使用openssl製做證書

製做證書以及Tomcat配置php

  1. 搭建openssl環境,下載openssl並設置環境變量方便命令行的使用;
  2. 修改openssl配置文件,設置dir目錄,如設置dir=e:/temp/openssl_ca,而後根據配置文件分別創建子目錄:certs、crl、newcerts、private分別用來存放簽發的證書、吊銷的證書、證書申請、私鑰;
    cd /d e:\temp\openssl_ca
    mkdir certs
    mkdir crl
    mkdir newcerts
    mkdir private
  3. 根據配置文件,須要創建索引文件、序列號文件、隨機數文件:
    cd /d e:\temp\openssl_ca
    echo 0 > index.txt
    echo 01 > serial
    openssl rand -out private/.rand 1000
  4. 構建根證書密鑰
    openssl genrsa -des3 -out private/ca.key.pem 2048
    密碼是:oseye
  5. 構建根證書申請
    openssl req -new -key private/ca.key.pem -out newcerts/ca.csr -subj "/C=CN/ST=GD/L=SZ/O=oseye/OU=oseye/CN=*.oseye.net"
  6. 簽發根證書
    openssl x509 -req -days 100000 -sha1 -signkey private/ca.key.pem -in newcerts/ca.csr -out certs/ca.cer
  7. 構建服務器密鑰
    openssl genrsa -des3 -out private/mobile.key.pem 2048
    密碼是:oseyemobile
  8. 構建服務器證書申請
    openssl req -new -key private/mobile.key.pem -out newcerts/mobile.csr -subj "/C=CN/ST=GD/L=SZ/O=oseye/OU=oseye/CN=mobile.oseye.net"
  9. 簽發服務器證書
    openssl x509 -req -days 100000 -sha1 -CA certs/ca.cer -CAkey private/ca.key.pem -CAserial ca.srl -CAcreateserial -in newcerts/mobile.csr -out certs/mobile.cer
    此處爲了安全可言採用sha512來簽名,更多簽名算法參見這裏
    openssl x509 -req -days 100000 -sha512 -CA certs/ca.cer -CAkey private/ca.key.pem -CAserial ca.srl -CAcreateserial -in newcerts/mobile.csr -out certs/mobile.cer
  10. 轉換成java可用的格式
    openssl pkcs12 -export -clcerts -inkey private/mobile.key.pem -in certs/mobile.cer -out certs/mobile.p12
    Export密碼:oseyep12
  11. 使用keytool查看
    keytool -list -keystore certs/mobile.p12 -storetype pkcs12 -v -storepass oseyep12
  12. 修改tomcat的配置文件server.xml
    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
                   maxThreads="150" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS" 
    	       keystoreFile="/var/oseye2.0/certs/mobile.p12" 
    	       keystorePass="oseyep12" 
    	       keystoreType="PKCS12" />
    經過./catalina.sh configtest來檢測配置結果。
  13. 站點http自動到https的配置
    在web.xml中
    <security-constraint>  <web-resource-collection > 
    		<web-resource-name >SSL</web-resource-name> 
    		<url-pattern>/*</url-pattern> 
    	</web-resource-collection>
    
    	<user-data-constraint> 
    		<transport-guarantee>CONFIDENTIAL</transport-guarantee> 
    	</user-data-constraint> 
    </security-constraint>

Tomcat在debian中的一點點PShtml

  1. 安裝命令:
    apt-get install tomcat7
  2. tomcat7配置文件:/etc/tomcat7/
    tomcat7日誌文件:/var/log/tomcat7
    tomcat7 web默認webapps:/var/lib/tomcat7/webapps
  3. 修改使用sun jdk,須要在/etc/default/tomcat7添加修改變量:JAVA_HOME=/usr/oseye/lib/jvm/jdk1.7.0_67

TCP的三次握手以及狀態的補充 java

可參考TCP的狀態 (SYN, FIN, ACK, PSH, RST, URG)TCP協議中的三次握手和四次揮手(圖解)web

相關文章
相關標籤/搜索