前言
我在網路上試過很多方法,通常都是用StrongSwan (我的環境是Ubuntu 16.04),但是都沒有效果。
除此之外,我也試過了pritunl,但是它是使用openVPN,要連上去還需要安裝它的客戶端,實在麻煩。
在使用SoftEther VPN之前,我用網路上那些方法,雖然可以用L2TP連上去Compute Engine,但是連不到外部的資源。
SoftEther VPN
它能快速的幫你佈署VPN Server,而不需要設定 /etc
的一堆conf
ig檔,更最重要的是在Google Cloud Platform上能正常運作。
我主要是參考兩篇文章:
- Setting up SoftEther VPN Server on Ubuntu 16.04 Xenial Xerus Linux
- 此篇主要是SoftEther VPN Server的安裝步驟,但是沒有設定L2TP
- Note: 若按照上面的教學設定的話,建立的user帳號是test,那vpn在登入的帳號會是 test@myFirstHUB
- how-to-setup-a-multi-protocol-vpn-server-using-softether
- 接著我看此篇文章的 Step 9: Setup L2TP/IPSec
- IPsecEnable成功之後,就能連上。
- 若之後要重新建立virtual hub,記得要設定
- SecureNatEnable
- IPsecEnable
- UserCreate
Google Cloud Platform 防火牆設定
Google Cloud Platform 預設會把L2TP所使用的port檔下來,所以我們要將它開啟。
首先先連上Google Cloud Platform的dashboard, 接著去設定網路的防火牆設定。
新增一個規則
- 優先等級要 >= 1000
- 通訊協定和通訊埠
- tcp:500;udp:500;udp:4500;udp:1701;esp
- esp 是資料的傳輸
結果
最後成功的話,IP將會在美國,即便Compute Engine是在台灣。
KD
SE
UF
IK
OG
GW
WE
TK
QB
NA
XD
OP
SM
LW
IR
KZ
RR
UN
BC
BT
DG