手把手教你 HTTPS 配置

2021-02-13 程序IT圈

還記得前兩天,給大家分享了一篇關於Https的安全性文章,如果沒看過的可以看一下。詳解HTTPS是如何確保安全性的?

上次有讀者說,需要整一篇關於如何Https配置的文章,今天就來了。這篇文章非常詳細,只需要5分鐘,就可以搞定Https的配置 。廢話不多說,開始正題了。01、關於 FreeSSL.cn

FreeSSL.cn 是一個免費提供 HTTPS 證書申請、HTTPS 證書管理和 HTTPS 證書到期提醒服務的網站,旨在推進 HTTPS 證書的普及與應用,簡化證書申請的流程。

當然了,我看重的不是免費,而是 FreeSSL 使用起來非常人性化。我是一個計算機常識非常薄弱的程式設計師(羞愧一下),但通過 FreeSSL,我竟然可以獨自完成 Tomcat 的 HTTPS 配置!

很多年以前,公司要做華夏銀行的接口對接,需要 HTTPS 訪問,大概花了 3000 塊買的證書,最後證書還有問題,HTTPS 也沒搞定。總之,坑的很!

FreeSSL.cn 有很大的不同,申請非常便捷,優點很多,值得推薦一波。畢竟再也不用郵件、電話各種聯繫了(也許時代進步了)。

•100% 永久免費;這要感謝 Let's Encrypt 與 TrustAsia 提供的免費 SSL 證書。在 HTTPS 證書到期前,FreeSSL.cn 會及時地提醒更換證書,免費的服務。

•私鑰不在網絡中傳播,確保 HTTPS 證書的安全。

02、使用 FreeSSL 申請證書

第一步,填寫域名,點擊「創建免費的 SSL 證書」

第二步,填寫郵箱,點擊「創建」

1)證書類型默認為 RSA

RSA 和 ECC 有什麼區別呢?可以通過下面幾段文字了解一下。

HTTPS 通過 TLS 層和證書機制提供了內容加密、身份認證和數據完整性三大功能,可以有效防止數據被監聽或篡改,還能抵禦 MITM(中間人)攻擊。TLS 在實施加密過程中,需要用到非對稱密鑰交換和對稱內容加密兩大算法。

對稱內容加密強度非常高,加解密速度也很快,只是無法安全地生成和保管密鑰。在 TLS 協議中,應用數據都是經過對稱加密後傳輸的,傳輸中所使用的對稱密鑰,則是在握手階段通過非對稱密鑰交換而來。常見的 AES-GCM、ChaCha20-Poly1305,都是對稱加密算法。

非對稱密鑰交換能在不安全的數據通道中,產生只有通信雙方才知道的對稱加密密鑰。目前最常用的密鑰交換算法有 RSA 和 ECDHE:RSA 歷史悠久,支持度好,但不支持 PFS(Perfect Forward Secrecy);而 ECDHE 是使用了 ECC(橢圓曲線)的 DH(Diffie-Hellman)算法,計算速度快,支持 PFS。

2)驗證類型默認為 DNS

DNS 和文件驗證有什麼區別呢?我們再來一起了解下。

首先,我們需要明白一點,CA(Certificate Authority,證書頒發機構) 需要驗證我們是否擁有該域名,這樣才給我們頒發證書。

文件驗證(HTTP):CA 將通過訪問特定 URL 地址來驗證我們是否擁有域名的所有權。因此,我們需要下載給定的驗證文件,並上傳到您的伺服器。

DNS 驗證:CA 將通過查詢 DNS 的 TXT 記錄來確定我們對該域名的所有權。我們只需要在域名管理平臺將生成的 TXT 記錄名與記錄值添加到該域名下,等待大約 1 分鐘即可驗證成功。

所以,如果對伺服器操作方便的話,可以選擇文件驗證;如果對域名的伺服器操作比較方便的話,可以選擇 DNS 驗證。如果兩個都方便的話,請隨意選啦。

3)CSR生成默認為離線生成

離線生成瀏覽器生成 和 我有 CSR 又有什麼區別呢?來,我們繼續了解一下。

離線生成 推薦!!!:私鑰在本地加密存儲,更安全;公鑰自動合成,支持常見證書格式轉換,方便部署;支持部分 WebServer 的一鍵部署,非常便捷。

離線生成的時候,需要先安裝 KeyManager,可以提供安全便捷的 SSL 證書申請和管理。下載地址如下:https://keymanager.org/

Windows 的話,安裝的時候要選擇「以管理員身份運行」。

瀏覽器生成:在瀏覽器支持 Web Cryptography 的情況下,會使用瀏覽器根據用戶的信息生成 CSR 文件。

Web Cryptography,網絡密碼學,用於在 Web 應用程式中執行基本加密操作的 JavaScript API。很多瀏覽器並不支持

我有 CSR:可以粘貼自己的 CSR,然後創建。

第三步,選擇離線生成,打開 KeyManager

填寫密碼後點擊「開始」,稍等片刻,出現如下界面。

第四步,返回瀏覽器,點擊「下一步」,出現如下界面。

第五步,下載文件,並上傳至伺服器指定目錄下。

第六步,點擊「驗證」,通過後,出現以下界面。

第七步,點擊「保存到KeyManager」,可以看到證書狀態變成了已頒發。

03、為 Tomcat 配置 jks 格式證書

第一步,導出證書。假如伺服器選擇的 Tomcat,需要導出 Java keystone (簡拼為 jks)格式的證書。

注意:私鑰的密碼在配置 Tomcat 的時候用到。

第二步,上傳證書至伺服器。

第三步,配置 Tomcat 的 server.xml。

<Connector port="81" protocol="HTTP/1.1"
     maxThreads="250" maxHttpHeaderSize="8192" acceptCount="100" connectionTimeout="60000" keepAliveTimeout="200000"
     redirectPort="8443"            
     useBodyEncodingForURI="true" URIEncoding="UTF-8"  
     compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla, traviata"   
      compressableMimeType="text/html,text/xml,application/xml,application/json,text/javascript,application/javascript,text/css,text/plain,text/json,image/png,image/gif"/>

<Connector
  protocol="org.apache.coyote.http11.Http11NioProtocol"
  port="443" maxThreads="200"
  scheme="https" secure="true" SSLEnabled="true"
  keystoreFile="/home/backup/qingmiaokeji.cn.jks" keystorePass="Chenmo"
  clientAuth="false" sslProtocol="TLS"
   useBodyEncodingForURI="true" URIEncoding="UTF-8"  
  compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla, traviata"   
  compressableMimeType="text/html,text/xml,application/xml,application/json,text/javascript,application/javascript,text/css,text/plain,text/json,image/png,image/gif"/>

其中 keystorePass 為導出證書時私鑰的加密密碼。

第四步,重啟 Tomcat,並在瀏覽器地址欄中輸入 https://qingmiaokeji.cn/ 進行測試。

注意到沒,瀏覽器地址欄前面有一個綠色的安全鎖,這說明 HTTPS 配置成功了!好了,為自己鼓個掌!

—  —

很多人不知道如果把公眾號標星置頂,特意做了一個動態圖演示,感謝大家可以置頂一下哈,不要錯過公眾號的打卡活動了!

第五期送書來了,這次送的都是暢銷書!

相關焦點

  • 手把手教你學Python之手寫數字識別
    更多詳細內容可查看視頻講解,手把手教你學Python(進階篇)課程完整視頻騰訊課堂連結:https://ke.qq.com/course/2026380?    01_手把手教你學Python之環境搭建    24_手把手教你學Python之Numpy(上)    25_手把手教你學Python之Numpy(下)    26_手把手教你學Python之Pandas(上)    27_手把手教你學Python之Pandas(中)    31_手把手教你學Python
  • 手把手教你恢復!
    手把手教你恢復!手把手教你恢復!生活中我們常常清理手機中無用的圖片以騰出手機內存,如果誤刪了照片怎麼恢復呢?手機相片誤刪了到底怎麼恢復又快又好?其實按照這幾步可以迅速搞定!大家快和小編一起來看看吧!  1、首先在手機應用商店中輸入「卓師兄」或者直接訪問卓師兄官網(官網:https://www.zhuoshixiong.com/)進行安裝下載。
  • 手把手教你寫網絡爬蟲(5):PhantomJS實戰
    本系列:《手把手教你寫網絡爬蟲(1):網易雲音樂歌單》《手把手教你寫網絡爬蟲(2):迷你爬蟲架構》
  • 手把手教你在手機或平板上配置Python環境!
    一、Termux安裝與配置1. 系統要求Android 7.0以上的平板或手機。這裡建議使用兼顧了便攜性和屏幕尺寸的8寸平板。2G以上可用空間。由於需要安裝各種軟體包,對存儲空間的消耗還是比較大的。2. Termux安裝在安裝Termux前,需要了解一下什麼是Termux。Termux 是一款支持 Linux 環境的 Android 終端模擬器APP。你無需對手機進行root或額外設置即可使用。
  • 上海幼兒園入園網上信息登記今天啟動,手把手教你如何填報
    上海幼兒園入園網上信息登記今天啟動,手把手教你如何填報 2020-04-24 08:15 來源:澎湃新聞·澎湃號·政務
  • 手把手教你怎麼操作
    中新經緯記者手把手來教你→ 打工人注意了,2021年度個稅專項附加扣除開始確認了。按照規定,每年12月份要對次年享受專項附加扣除的內容進行確認,確認後,才可在扣除年度生效。怎麼操作?中新經緯記者手把手來教你→ 打工人注意了,2021年度個稅專項附加扣除開始確認了。
  • 手把手教你輕鬆恢復!
    手把手教你輕鬆恢復!手機照片對於我們每個人來說都是非常重要的,原因就是手機照片保存了我們許許多多的回憶,這些回憶大家都是喜歡珍惜的,那麼要是一不小心刪除了一些手機刪除的照片怎麼辦?手機刪除照片能恢復嗎?是可以恢復的,來看看下面的小技巧吧!
  • 吳恩達手把手教你刷論文!
    你不是一個人!斯坦福教授吳恩達在上周發布了一篇博客,手把手教你如何讀論文,以上問題都在文中一一被解答。在煉丹界中,快速刷論文了解一下最前沿研究已經是每個煉丹師的必備技能了。為了讓自己的知識不過時,從業者們也都要保持學術思維和習慣,和一些走上工作崗位後只用從社會大學學習的領域還不同。
  • ASP.NET Core 3.1中HTTPS的配置
    如果配置HTTPS成了迫在眉睫的問題,基於Nginx、Apache、Tomcat等Web伺服器對HTTPS支持都很友好,配置比較簡單,但是對於使用C#和ASP.NET Core做Web開發的同學可能還有一定的困惑,本文我們就來說說在ASP.NET Core環境下的HTTPS配置。HTTPS重定向中間件在asp.net中,默認情況下啟用https。
  • 【課程】人工智慧+股票投資,手把手教你
    他將開展一系列網路互動課程,手把手教你利用人工智慧預測美國股票走勢,首次披露在華爾街多年的交易策略和投資模型。https://www.tradesmax.com/classes 第一個項目:財報數據預測 第二項項目:K線圖走勢預測課程報名方法:微信客服meigu88
  • 律師服務平臺|手把手教你一次認證,全國通辦
    律師服務平臺|手把手教你一次認證,全國通辦 2020-12-11 19:55 來源:澎湃新聞·澎湃號·政務
  • 手把手教你搭建微信支付寶聚合支付接口
    現在通過網際網路進行銷售已經越來越普遍了,幾乎每一家企業都會有自己的網站或者APP應用,那麼要在網際網路實現銷售交易必須要解決客戶訂單支付並聯動後臺自動發貨的問題,雖然流程很簡單但是卻困擾了很多小夥伴,畢竟牽涉到支付系統設計與開發,各種支付場景接口實現安全,這可是個不小的工程,所以在這裡介紹一種簡單的私有化聚合支付搭建方案,手把手教您輕鬆搭建自己的支付系統
  • Nature|手把手教你搭建大規模藥物虛擬篩選平臺
    ),LSF(https://www.ibm.com/us-zh/marketplace/hpc-workload-management)和SGE(http://gridscheduler.sourceforge.net)。
  • 手把手教你在手機或平板上配置Python環境
    不多說,讓我們開始吧!一、Termux安裝與配置1. 系統要求Android 7.0以上的平板或手機。Termux 是一款支持 Linux 環境的 Android 終端模擬器APP。你無需對手機進行root或額外設置即可使用。這款APP會在手機中自動安裝一個最小化基本系統,並支持使用 APT 包管理工具安裝軟體。目前Termux官網(https://termux.com/)建議使用F-Droid進行安裝,不再支持通過Google Play進行安裝。
  • 手把手教你申請香港身份證
    今天Edu-linker老師手把手教你,2018香港身份證申請攻略。   1   為什麼要辦理香港身份證   具體步驟:   1 : 打開香港政府入境處網站,如下:   https://www.immd.gov.hk
  • 手機照片恢復管家手把手教你
    手機照片恢復管家手把手教你。一些我們來不及記下的信息打開手機拍照記錄可以說很方便了,有些寶貴的照片我們會把它上傳到qq空間或者分享給qq好友,那麼誤刪這些珍貴的照片我們怎麼找回呢?  第一種簡單方法:qq回收站照片找回方法  ①登錄QQ,在客戶端頂部找到QQ頭像圖標,點擊進入;  ②在設置中>隱私>好友動態設置>點擊照片回收站>需要輸入QQ空間的獨立密碼並提交;最後在回收站中;  ③找到你想要還原的照片
  • 手把手教你安裝及配置伺服器集群系統
    安裝系統    今天,我們方案大家談的經銷商為我們提供了安裝及配置伺服器集群系統的詳細步驟。下面,我們來手把手的教您配置伺服器集群系統吧!每個節點的公用網絡適配器都將群集連接到客戶端所在的公用網絡,並應配置為內部群集通信的後備路由。要實現這些操作,應該將群集服務的這些網絡角色配置為「只用於內部群集通信」或「所有通信」。
  • 新坑 | 手把手教你用 among other things
    所以,我決定研發一個課程,手把手教你如何大變小屎詞提高英文措辭能力。因為全是低級詞,所以這個課程適合全中國絕大多數英語學習者,覆蓋包括中高考、四六級、託福雅思及研究生入學考試在內的幾乎所有英語能力考試。
  • 手把手教你安裝Anaconda和Pycharm
    菜園小餅:你知道Python解釋器是什麼嗎,IDE又是什麼?小白:我什麼都不知道啊?腦子一片空白。菜園小餅:不要方,我告訴你,解釋器是Python的運行執行環境。IDE是集成開發環境,也就是我們寫程序的軟體。
  • 手把手教你如何創建雲資料庫
    目的 最近不少人反饋在使用RDS的過程中會發現一些坑,今天就來手把手教你如何創建雲資料庫 4.基礎配置 CPU、內存、磁碟、RDS必備配置,根據選用架構的不同CPU及內存組合有所不同, 以基礎架構為例