前言
我在網路上試過很多方法,通常都是用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
CI
LF
CQ
VA
IK
LW
JI
SX
YV
CD
TU
EW
FJ