Posted on

在AWS的EC2裡加上SSL/TSL

SSL/TSL是甚麼

SSL/TLS是一種網絡協議,用於在客戶端和服務器之間提供安全的數據傳輸。 SSL代表“安全套接字層”,TLS代表“傳輸層安全性”,兩者是相似的協議,TLS是SSL的升級版。

SSL/TLS通過加密數據流來保護通信的隱私和完整性,以防止數據在傳輸過程中被竊聽或篡改。它使用數字證書來驗證服務器身份,以確保連接到的服務器是預期的服務器,而不是惡意者偽裝的服務器。

SSL/TLS廣泛用於保護網站,電子郵件,即時通訊,虛擬專用網絡(VPN)等應用程序中的數據傳輸。通過使用SSL/TLS,這些應用程序能夠提供更安全的通信,確保用戶的數據受到保護。

我的伺服器環境

這邊所說的是自架的Linux服務器的狀況,一般若是在網域託管的服務商買網站空間,使用cPanel等管理網站的狀況下,一般都會在空間購買裡面附設有免費的SSL/TSL證書,除非我們的網站需要額外的附加資訊才需要自行購買。

這篇文章所講的主要是當我們要在Linux裡面自行設定SSL/TSL,或使用AWS、Azure等服務的虛擬機器架設網站時,會需要自行於Linux中建立SSL/TSL並匯入所需的SSL/TSL認證。

在AWS中使用免費的ACM證書

這邊有很詳細的指導: 教學課程: 在 Amazon Linux 2 上設定 SSL/TLS

但是這邊的教程在後面匯入SSL證書的部分,是要我們自己去購買自己網域專屬的證書,那個很貴而且不太能夠免費,一般免費的SSL/TSL其組織等資訊並不會附在上面,如下圖為AWS所提供的免費證書。

要使用免費證書一個重要的前提就是要將我們所購買的網域給AWS的Route 53來託管,這個動作會產生微量的費用,一個月為0.51美金。

在AWS裡面,有一些服務本身就可以直接和Route53,若是沒辦法,則要另外建立 Elastic Load Balancing,這個是免費的,它可以用來連結我們的EC2和Route53,這樣就可以利用ACM來設定憑證了。