
我有一個 SMB 用戶端,需要在其中安裝 VPN 解決方案。我有一台 CentOS 伺服器,有 3 個網路連接,其中一個是來自路由器的 Internet 連接。它有10.xxx 位址(由路由器進行NAT),第二個連接是192.168.3.x,第三個連接是192.168.4.x,我希望SMB 的工作人員可以在以下情況下從Internet 連接到伺服器他們在路上,可以像在辦公室電腦上一樣存取他們的網路資源。
VPN 伺服器(即 Centos 機器)應該透過防火牆取得所有 VPN 流量。
我會盡量籠統地問問題:
- 客戶端的 IP 位址應該是什麼? (我們不在網路上使用 DHCP)。
- 如何讓伺服器/客戶端根據 IP 決定它應該屬於哪個網路? (我的意思是 4.x 或 3.x)。
- 儘管路由器沒有伺服器機器的能力(我知道VPN涉及加密和解密),但將VPN解決方案放在路由器端是不是更好?
我想獲得客戶端和伺服器上所需配置的粗略輪廓。
正如你從標題中看到的,我打算使用 OpenVPN。
更新:
為了澄清這個問題,我希望小型企業的員工可以透過網路連接到他們的家庭網絡,並在世界任何地方存取網路資源。
答案1
因此,經過三個晚上的努力,我已經在測試環境中正確安裝和配置了它,所以在這裡我可以根據我的發現發布一些提示和技巧,並希望回答我的問題。
您應該做的第一件事是獲取伺服器/客戶端 OpenVPN 解決方案的範例設定文件,這將使您的生活更輕鬆。你可以從這裡在 Linux 機器上取得這個檔案/usr/share/doc/openvpn/sample-config-files/
(如果你在找到它時遇到問題find / -name client.conf
)並將它們複製到/etc/openvpn/
,然後按照偉大的指導從 OpenVPN 網站來看,只需對範例文件進行 3 處變更即可開始使用。
回答我的問題:
OpenVPN 伺服器基本上會建立一個自己的網絡,它不屬於目前連接的網路的一部分,因此您的用戶端會透過 OpenVPM 伺服器自動從該網路取得 IP 位址,以便您的用戶端能夠與與OpenVPN 伺服器連接的其他網絡,您在伺服器的設定檔中
push "route 192.168.3.0 255.255.255.0"
為您希望客戶端與之通訊的每個網路新增這一行,這樣當您的客戶端連接到伺服器時,它的路由表就會由伺服器更新並且能夠與指定網絡上的機器進行通信。參見答案1。
我已經使用具有 OpenVPN 伺服器功能的簡單 DD-WRT 路由器對其進行了測試,但是當您擁有超過 3 個用戶時,它似乎很慢,因此最好獲得