如何使用AWS建立OpenVPN伺服器:完整指南

更新時間

OpenVPN是最廣泛使用的VPN應用程式之一。它是許多專有VPN應用程式的核心,透過一些努力,您也可以使用它。安裝OpenVPN相對簡單,但設定選項可能有些複雜。在本文中,我將向您展示如何使用免費的亞馬遜網路服務(AWS)彈性運算雲端(EC2)實例設定Linux VPN伺服器作為您的Linux筆記型電腦或桌上型電腦的OpenVPN伺服器。我們還將向您展示如何在Linux客戶端上設定一個“殺開關”,以防止不必要的流量透過您的ISP網路傳輸。

OpenVPN的身份驗證方式

OpenVPN有兩種處理身份驗證的方法。靜態加密方法最容易設置,但非常有限。我們將使用私鑰基礎設施(PKI)方法,利用Easy RSA腳本。 PKI方法允許多個客戶端連接,並採用更強大的加密來保護您的流量。

建立AWS實例

第一步:建立AWS帳戶

要開始,您需要建立一個AWS帳戶。在註冊過程中,您需要提供信用卡信息,但您可以在一年內使用免費的微型實例。如果您的帳戶已超過一年,則無法享有免費額度。

第二步:登入並建立EC2實例

  1. 登入後,建立一個EC2實例。這個過程包含幾個步驟:
  2. 命名實例:實例名稱不會影響任何功能,只是方便您尋找。
  3. 選擇作業系統:選擇Ubuntu 14.04。雖然可以在其他類型的Linux上建立OpenVPN伺服器,但不同的發行版有不同的命令和檔案儲存位置,因此您可能需要修改我提供的命令以使其正常工作。
  4. 選擇實例類型:我使用的是t2.micro實例。如果您在亞馬遜帳戶的前12個月內使用,它是免費的,但每月限額為15GB,對於不打算下載種子的用戶來說,這個額度就足夠了。到期後,每月約$8美元。

  5. SSH連線:您需要透過SSH連線到該伺服器進行設定。連線時,您需要使用金鑰進行身份驗證。您可以為此密鑰命名,以便後續使用。給它一個容易記住的名稱並下載。

  6. 啟動實例:您的實例將啟動並在不久後準備好進行首次登入。點選「繼續到EC2控制台」按鈕繼續設定伺服器。

準備私鑰

您需要準備在創建過程中下載的私鑰。首先,將其從下載目錄移動到更安全的位置。通常情況下,Linux和macOS上的密鑰會存放在~/.ssh/目錄中。

接下來,改變其權限以確保只有您(所有者)可以讀取該金鑰。由於這是私鑰,因此應僅由所有者可讀。嘗試使用未正確保護的金鑰登入時,將出現以下錯誤:

bash $ ssh root

54.186.178.243 -i .ssh/amazon-openvpn.pem

確認更新

登入後,系統會提示您無需更新,但我建議您執行以下命令以確保所有軟體都是最新的:

bash $ sudo apt-get update $ sudo apt-get upgrade

現在,您可以在AWS管理控制台中看到您的實例,並準備好安裝OpenVPN。

為什麼要使用PKI而不是靜態加密?

靜態加密使用靜態金鑰,設定非常簡單,但缺點是: -只能有一個客戶端:每次只能有一個客戶端使用伺服器。 -金鑰洩漏風險:如果金鑰被洩露,則可以解密所有流量,包括一些過去捕獲的流量。

使用PKI允許多個客戶端同時連接,每個客戶端都有自己的金鑰。伺服器無需了解可能連接的用戶端,只需要呈現我們即將設定的OpenVPN CA簽署的憑證即可。

什麼是憑證授權單位(CA)?

您可能在TLS網站憑證的上下文中聽說過這個術語。一般來說,證書在網頁上下文中有兩個主要功能: - 加密瀏覽器與網路伺服器之間的流量。 - 確保瀏覽器連接到預期的網站。

建立自己的CA以簽署OpenVPN用戶端憑證是一種控制誰可以連接到OpenVPN伺服器的方法。您的伺服器將僅信任由您即將建立的CA簽署的用戶端憑證。

結論

透過本指南,您已經學習如何在AWS上設定OpenVPN伺服器。使用PKI方法不僅可以增強安全性,還可以為多個客戶端提供支援。希望這篇文章對您有幫助!

更新時間