搭建https服務--獲取https證書(1)
HTTP是明文的,很容易通過抓包等方式,獲取到請求資訊。導致資訊被洩露,串改。HTTPS相對於HTTP,多了安全加密。客戶端採用公匙加密,服務端採用私匙解密。採用HTTPS能夠很大程度地提升服務安全性,而且升級到HTTPS並不複雜。
HTTPS證書的獲取方式有許多:
1.可以jd的keytool工具自己製作
命令如下:
keytool -genkey -keyalg RSA -keysize 2048 -validity 3650 -alias SEC_TEST -keypass w123456 -keystore test.keystore -storepassw123456 -dname "CN=localhost,OU=DEP,O=CN,L=BJ,ST=BJ,C=CN"
其中,-keyalg 指定演算法,
-keysize指定金鑰大小,
-validity指定有效期,單位為天,
-alias 別名
-keypass 指定私鑰使用密碼,
-keystore指定金鑰庫名稱,
-storepass 證書庫的使用密碼,從裡面提取公鑰時需要密碼
-dname :CN擁有者名字,一般為網站名或IP+埠,如,OU組織機構名 O組織名 L城市 ST州或省 C國家程式碼
以上命令執行後將在當前目錄下產生一個keystore檔案,裡面儲存著金鑰和證書資訊;
匯出公鑰:
keytool -export -alias SEC_TEST -file test_pub_cer.cer -keystore test.keystore -storepass w123456
在當前目錄下會產生一個test_pub_cer.cer的證書,包含了公鑰資訊及證書相關資訊;自己生成的證書是可以使用,但是不被各大瀏覽器、系統等公司認可,可以作為個人聯絡,伺服器間通訊。
2.通過證書服務商購買,一般從幾十到上萬不等。
靠譜、免費的證書服務商很少,包括一些以前提供的,現在都不支援了。
這裡介紹一個免費(3個月有效期)DV的證書:www.startssl.com,除了有效期之外,個人使用問題不大。雖然是英文網站,但按步驟申請對於程式設計師來說,不是難事。只是國外網站速度較慢需要耐心。