Networking

將 Debian 伺服器連接到 VPN 伺服器並仍然為網際網路提供服務

  • August 2, 2013

本地網路中有一台伺服器(執行 Debian 7)和一台遠端 VPN 伺服器。我無法控制遠端 VPN 伺服器。我需要本地網路中的伺服器直接向 Internet 提供服務(網路伺服器等),而我需要通過遠端 VPN 建立其他連接。

我知道如何設置本地伺服器以使用使用 OpenVPN 的遠端 VPN 伺服器,但是所有連接都是隧道式的,伺服器不再監聽來自 Internet 的傳入連接(僅通過遠端 vpn 傳入連接)並且無法進行非隧道式與網際網路的連接。

有什麼方法可以配置 OpenVPN 或 Debian 以同時允許兩種類型的連接,以便我可以將所有網際網路服務綁定到網際網路,同時將其他服務綁定到隧道網路?

為了實現拆分隧道,即使遠端伺服器指示 OpenVPN 客戶端對所有內容都使用隧道,您也應該在客戶端上創建一個route-up覆蓋預設路由的腳本:

#!/bin/bash
/sbin/route delete default
/sbin/route add default $route_net_gateway

這應該重新建立在建立 VPN 連接之前存在的預設路由。

當 OpenVPN 配置為告訴客戶端自動通過 VPN 路由所有流量時,就會發生這種情況。您將需要禁用此功能。

在您的 OpenVPN 伺服器配置中查找一個redirect-gateway選項並將其刪除。例如,它可能看起來像以下之一:

push "redirect-gateway def1"
push "redirect-gateway local def1"

您可能還需要為VPN 連接另一端的網路設置額外的靜態路由。

引用自:https://serverfault.com/questions/528156