Linux下生成https自簽名證書,解決蘋果發布問題重新整理

開心一笑

【我今天被兩個人揍了。原因是——早上去買早點,在樓下看見一男的把一女的圍在墻角,我正義的過去喊了一句“禽獸放開那個畜生。】

提出問題

如何利用tomcat配置https自簽名證書??????

解決問題

QQ截圖20161120192610.png

用tomcat配置https自簽名證書,解決 ios7.1以上系統, 蘋果inHouse發布,網上的這篇文章有很多命令柔在一塊,很費解,特意再整理下,剛好項目要用到:

前提:

  • 假如你已經有Linux環境(我的是:Ubuntu 4.8.2-19)
  • 假如你的Linux環境已經安裝openSLL
  • 假如你對shell命令了解

那就開始吧!

第一步:以root用戶登錄虛擬機,這里我用Xshell這個軟件連接虛擬機

root@160-dev:/# su root

第二步:新建證書存放目錄

//進入tmp目錄
root@160-dev:/# cd tmp 
//建立ca目錄,用于存放之后生成的相關證書文件
root@160-dev:/tmp# mkdir ca 
//回到根目錄
root@160-dev:/# cd /

第三步:制作根證書的私鑰文件

root@160-dev:/tmp/ca# openssl genrsa -out /tmp/ca/myCA.key 2048     
Generating RSA private key, 2048 bit long modulus
..........+++
...................................................................+++
e is 65537 (0x10001)

這個時候,會生成myCA.key這個私鑰文件,

第四步:生成根證書

openssl req -x509 -new -key /tmp/ca/myCA.key -out /tmp/ca/myCA.cer -days 730 -subj  /CN="My CustomCA" 

My CustomCA這個名字可以修改成自己想要的名字

第五步:制作自簽名SSL證書

root@160-dev:/# openssl genrsa -out /tmp/ca/server.key 2048
Generating RSA private key, 2048 bit long modulus
................................+++
............+++
e is 65537 (0x10001)

第六步:創建CSR

root@160-dev:/# openssl req -new -out /tmp/ca/server.req -key /tmp/ca/server.key -subj /CN=192.168.3.162/CN=192.168.3.162/CN=localhost

此時會在ca目錄下生成server.req這個文件,這里的IP:192.168.3.162是我自己的服務器IP,換了其他的服務器,需要修改成其他服務器對于的IP

第七步:用CSR 去創建SSL 證書

root@160-dev:/tmp/ca# openssl x509 -req -in /tmp/ca/server.req -out /tmp/ca/server.cer -CAkey /tmp/ca/myCA.key -CA /tmp/ca/myCA.cer -days 36500 -CAcreateserial -CAserial  /tmp/ca/server.serial
Signature ok
subject=/CN=192.168.3.162/CN=192.168.3.162/CN=localhost
Getting CA Private Key
root@160-dev:/tmp/ca# 

這里我們假設有效期為100年,輸出文件為server.cer,序號文件為server.serial(撤銷證書時使用)。

第八步:將.key 和.cer 文件導出為.p12 證書

root@160-dev:/tmp/ca# openssl pkcs12 -export -in /tmp/ca/server.cer -inkey /tmp/ca/server.key -out  /tmp/ca/server.p12 -name "server"
//輸入密碼:111111(密碼自定義)
Enter Export Password:
//確認密碼:111111(密碼自定義)
Verifying - Enter Export Password:

這里的Enter Export Password: 需要你填寫密碼,這里我寫111111.

第九步:將.p12 文件導入到java keystore 中

root@160-dev:/tmp/ca# keytool -importkeystore -v -srckeystore  /tmp/ca/server.p12 -srcstoretype pkcs12 -srcstorepass 111111 -destkeystore /tmp/ca/server.keystore -deststoretype jks -deststorepass 111111
//出現下面提示,代表成功了
Entry for alias server successfully imported.
Import command completed:  1 entries successfully imported, 0 entries failed or cancelled
[Storing /tmp/ca/server.keystore]

成功了!

參考文章

【1】用tomcat配置https自簽名證書,解決 ios7.1以上系統, 蘋果inHouse發布

【2】Linux下Openssl的安裝全過程

讀書感悟

來自—克里斯托弗·麥克杜格爾《天生就會跑》

  • 不是一定要跑得快,而是一定要無所畏懼。
  • 你不是因為變老而停止跑步,你是因為停止跑步才變老。
  • 跑步是一種獨特的體驗,它融合了人類的兩種原始沖動:恐懼與快感。無論是害怕了還是快活了,我們都會去跑步。既是奔跑著逃開不幸,也是奔跑著追尋幸福。

其他

如果有帶給你一絲絲小快樂,就讓快樂繼續傳遞下去,歡迎點贊、頂、歡迎留下寶貴的意見、多謝支持!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容