將子網路 IP 指派給 AWS 中的 OpenVPN 用戶端

將子網路 IP 指派給 AWS 中的 OpenVPN 用戶端

我在 VPC 內的 EC2 執行個體上安裝了一個可用的 OpenVPN 伺服器。它用於允許遠端使用者存取私有子網路內的服務。到目前為止,這已經是一個足夠的解決方案,但目前所有客戶端都被視為 VPN 伺服器 IP。

是否可以在 EC2 執行個體上設定 OpenVPN 伺服器並向客戶端指派 IP 位址(最好是每個使用者靜態的)?

假設我有一個10.0.0.0/16包含10.0.10.0/24子網路 A、10.0.11.0/24子網路 B 的 VPC。

答案1

您實際上使用的是 NATed 選項(預設),這表示所有客戶端都將被視為 OpenVPN 伺服器本身。

您可以使用另一個選項「路由」。在這種情況下,將為您的用戶端指派您定義的範圍內的 IP 位址(範例中的 10.0.11.0/24)。請確保您的 VPC 上不存在此子網路 (10.0.11.0/24),或 OMLY 您的 OpenVPN 伺服器位於此子網路中。

您唯一需要記住的是,您的用戶正在存取的私人子網路中的實例需要知道如何存取用戶的IP 位址(在本例中為10.0.11.0/24),因為AWS 不知道如何存取您的用戶的IP 位址(在本例中為10.0.11.0/24)。

解決這個問題的方法是:

  • 將路由新增至您的 AWS 路由表(在您的私人子網路上),以將所有發送至 10.0.11.0/24 的流量傳送至您的 OpenVPN 伺服器。
  • 停用 OpenVPN 伺服器實例上的來源/目標檢查
  • 確保 OpenVPN 伺服器執行個體的安全群組允許來自 10.0.11.0/24 的流量
  • 如果您使用 NACL,請確保您也沒有封鎖此流量。

相關內容