網際網路的安全是如何保證的:TLS、SSL 和 CA
| 2019-12-21 08:46 評論: 2 收藏: 1
你的瀏覽器裡的鎖的圖示的後面是什麼?
每天你都會重複這件事很多次,訪問網站,網站需要你用你的使用者名稱或者電子郵件地址和你的密碼來進行登入。銀行網站、社交網站、電子郵件服務、電子商務網站和新聞網站。這裡只在使用了這種機制的網站中列舉了其中一小部分。
每次你登入進一個這種型別的網站時,你實際上是在說:“是的,我信任這個網站,所以我願意把我的個人資訊共享給它。”這些資料可能包含你的姓名、性別、實際地址、電子郵箱地址,有時候甚至會包括你的信用卡資訊。
但是你怎麼知道你可以信任這個網站?換個方式問,為了讓你可以信任它,網站應該如何保護你的交易?
本文旨在闡述使網站變得安全的機制。我會首先論述 web 協議 http 和 https,以及傳輸層安全(TLS)的概念,後者是網際網路協議(IP)層中的加密協議之一。然後,我會解釋證照頒發機構和自簽名證照,以及它們如何幫助保護一個網站。最後,我會介紹一些開源的工具,你可以使用它們來建立和管理你的證照。
透過 https 保護路由
瞭解一個受保護的網站的最簡單的方式就是在互動中觀察它,幸運的是,在今天的網際網路上,發現一個安全的網站遠遠比找到一個不安全的網站要簡單。但是,因為你已經在 Opensource.com 這個網站上了,我會使用它來作為案例,無論你使用的是哪個瀏覽器,你應該在你的位址列旁邊看到一個像鎖一樣的圖示。點選這個鎖圖示,你應該會看見一些和下面這個類似的東西。
預設情況下,如果一個網站使用的是 http 協議,那麼它是不安全的。為透過網站主機的路由新增一個配置過的證照,可以把這個網站從一個不安全的 http 網站變為一個安全的 https 網站。那個鎖圖示通常表示這個網站是受 https 保護的。
點選證照來檢視網站的 CA,根據你的瀏覽器,你可能需要下載證照來檢視它。
在這裡,你可以瞭解有關 Opensource.com 證照的資訊。例如,你可以看到 CA 是 DigiCert,並以 Opensource.com 的名稱提供給 Red Hat。
這個證照資訊可以讓終端使用者檢查該網站是否可以安全訪問。
警告:如果你沒有在網站上看到證照標誌,或者如果你看見的標誌顯示這個網站不安全——請不要登入或者做任何需要你個人資料的操作。這種情況非常危險!
如果你看到的是警告標誌,對於大多數面向公眾開放的網站來說,這很少見,它通常意味著該證照已經過期或者是該證照是自簽名的,而非透過一個受信任的第三方來頒發。在我們進入這些主題之前,我想解釋一下 TLS 和 SSL。
帶有 TLS 和 SSL 的網際網路協議
TLS 是舊版安全套接字層協議(SSL)的最新版本。理解這一點的最好方法就是仔細理解網際網路協議的不同協議層。
我們知道當今的網際網路是由 6 個層面組成的:物理層、資料鏈路層、網路層、傳輸層、安全層、應用層。物理層是基礎,這一層是最接近實際的硬體裝置的。應用層是最抽象的一層,是最接近終端使用者的一層。安全層可以被認為是應用層的一部分,TLS 和 SSL,是被設計用來在一個計算機網路中提供通訊安全的加密協議,它們位於安全層中。
這個過程可以確保終端使用者使用網路服務時,通訊的安全性和保密性。
證照頒發機構和自簽名證照
證照頒發機構(CA)是受信任的組織,它可以頒發數字證照。
TLS 和 SSL 可以使連線更安全,但是這個加密機制需要一種方式來驗證它;這就是 SSL/TLS 證照。TLS 使用了一種叫做非對稱加密的加密機制,這個機制有一對稱為私鑰和公鑰的安全金鑰。(這是一個非常複雜的主題,超出了本文的討論範圍,但是如果你想去了解這方面的東西,你可以閱讀“密碼學和公鑰密碼基礎體系簡介”)你要知道的基礎內容是,證照頒發機構們,比如 GlobalSign、DigiCert 和 GoDaddy,它們是受人們信任的可以頒發證照的供應商,它們頒發的證照可以用於驗證網站使用的 TLS/SSL 證照。網站使用的證照是匯入到主機伺服器裡的,用於保護網站。
然而,如果你只是要測試一下正在開發中的網站或服務,CA 證照可能對你而言太昂貴或者是太複雜了。你必須有一個用於生產目的的受信任的證照,但是開發者和網站管理員需要有一種更簡單的方式來測試網站,然後他們才能將其部署到生產環境中;這就是自簽名證照的來源。
自簽名證照是一種 TLS/SSL 證照,是由建立它的人而非受信任的 CA 機構頒發的。用電腦生成一個自簽名證照很簡單,它可以讓你在無需購買昂貴的 CA 頒發的證照的情況下測試一個安全網站。雖然自簽名證照肯定不能拿到生產環境中去使用,但對於開發和測試階段來說,這是一種簡單靈活的方法。
生成證照的開源工具
有幾種開源工具可以用來管理 TLS/SSL 證照。其中最著名的就是 openssl,這個工具包含在很多 Linux 發行版中和 MacOS 中。當然,你也可以使用其他開源工具。
工具名 | 描述 | 許可證 |
---|---|---|
OpenSSL | 實現 TLS 和加密庫的最著名的開源工具 | Apache License 2.0 |
EasyRSA | 用於構建 PKI CA 的命令列實用工具 | GPL v2 |
CFSSL | 來自 cloudflare 的 PKI/TLS 瑞士軍刀 | BSD 2-Clause SimplifiedLicense |
Lemur | 來自網飛的 TLS 建立工具 | Apache License 2.0 |
如果你的目的是擴充套件和對使用者友好,網飛的 Lemur 是一個很有趣的選擇。你在網飛的技術部落格上可以檢視更多有關它的資訊。
如何建立一個 Openssl 證照
你可以靠自己來建立證照,下面這個案例就是使用 Openssl 生成一個自簽名證照。
1、使用 openssl
命令列生成一個私鑰:
openssl genrsa -out example.key 2048
2、使用在第一步中生成的私鑰來建立一個證照籤名請求(CSR):
openssl req -new -key example.key -out example.csr -subj "/C=US/ST=TX/L=Dallas/O=Red Hat/OU=IT/CN=test.example.com"
3、使用你的 CSR 和私鑰建立一個證照:
openssl x509 -req -days 366 -in example.csr -signkey example.key -out example.crt
瞭解更多關於網際網路安全的知識
如果你想要了解更多關於網際網路安全和網站安全的知識,請看我為這篇文章一起製作的 Youtube 影片。
你有什麼問題?發在評論裡讓我們知道。
via: https://opensource.com/article/19/11/internet-security-tls-ssl-certificate-authority
作者:Bryant Son 選題:lujun9972 譯者:hopefully2333 校對:wxy
相關文章
- 網際網路上前一百萬個網站的SSL/TLS分析網站TLS
- 如何申請SSL證書保護網路資訊保安
- Docker開啟TLS和CA認證DockerTLS
- 網路安全防範技術主要包括哪些?如何保證網際網路安全?
- TLS、SSL、CA 證書、公鑰、私鑰。。。今天捋一捋!TLS
- 如何保證無線網路安全
- 計算機網路——如何保證網路傳輸的安全性計算機網路
- SSL數字證書為網際網路提供加密傳輸通道加密
- 調查顯示網際網路14%SSL認證不安全
- 揭祕網際網路是如何的推廣 網際網路如何推廣
- 在Linux中,如何管理SSL/TLS證書?LinuxTLS
- OV SSL證書有哪些功能?網站安裝OV SSL證書的好處網站
- 網際網路時代如何保護及管理個人身份資訊
- 工業機器人如何保證網路效能機器人
- 保證預言機網路的去中心化特性和可用效能中心化
- 網際網路如何推廣 網際網路推廣
- 如何保護網路免受DOS和DDOS的侵害呢?
- [網際網路]網際網路公司的種類
- 越來越多網站安裝SSL證書的原因網站
- 平安證券:網際網路與金融的激情碰撞
- 網路安全是汽車行業的重中之重行業
- 耐克是如何擁抱網際網路和大資料的?大資料
- 更好的保證預言機網路的去中心化特性和可用效能中心化
- 基於SSL(TLS)的HTTPS網頁下載——如何編寫健壯的可靠的網頁下載TLSHTTP網頁
- 網路框架分析 – 全是套路框架
- 網際網路是如何連線的:計網概述
- SSL和TLS 區別TLS
- 如何為自己的個人網站選擇SSL證書?網站
- 保證網路安全有哪些方式?
- 安裝SSL證書的網站如何實現HTTP重定向到HTTPS網站HTTP
- 網際網路公司,網際網路時代的特徵(移動網際網路,平臺思維,網際網路思維)特徵
- 申請並部署免費的 SSL/TLS 證書TLS
- 網際網路怎樣推廣 網際網路如何推廣
- 提高網站效能的SSL/TLS最佳化方法介紹!網站TLS
- 國密SSL證書:保障中國網路安全的重要利器
- 網際網路如何推廣
- SSL/TLS證書有什麼作用?TLS
- 理解臉書是如何從網際網路消失的