Ubuntu 20.04.3 Setup L2TP VPN Server

資源配置:CPU 2Core、RAM4G、HD16GB

虛擬私人網路(L2TP VPN Server)建置
以Linux的Ubuntu20.04.3伺服器版為例,採用懶人包搭建伺服器

伺服器部分:
1.更新系統並重啟

sudo apt-get update && apt-get dist-upgrade

2.下載安裝腳本

sudo wget https://git.io/vpnsetup -O vpnsetup.sh

3.編輯腳本

sudo nano vpnsetup.sh

填入以下內容並牢記(其他網路設定可在事後修改)

4.執行安裝腳本

sudo sh vpnsetup.sh

5.修改路由表

sudo nano iptables.rules

6.修改DHCP範圍與本地端IP(以上步驟為例)

sudo nano /etc/xl2tpd/xl2tpd.conf

7.修改DHCP派發的DNS

sudo nano /etc/ppp/options.xl2tpd
(預設是8.8.8.8,8.8.4.8)會無法打開公司內部有Domain的站台

8.修改PSK共同金鑰(日後想改可用)

sudo nano /etc/ipsec.secrets

9.修改使用者(日後想改可用)

sudo nano /etc/ppp/chap-secrets
一行一個使用者,僅修改雙上引號帳戶與密碼,例:”使用者名稱” l2tpd “使用者密碼”

用戶端部分:Win10-11

1.自動安裝用戶端L2TP VPN連線,使用PowerShell編輯並存檔 Add-VpnConnection.ps1(此命令於安裝後須重啟系統)

Add-VpnConnection -Name 'VPN連線名稱' -ServerAddress 'xxx.xxx.xxx.xxx' -L2tpPsk 'PSK共同金鑰' -TunnelType L2tp -EncryptionLevel Required -AuthenticationMethod Chap,MSChapv2 -Force -RememberCredential -PassThru

2.使用PowerShell編輯並存檔 Remove-VpnConnection.ps1

Remove-VpnConnection -Name 'VPN連線名稱'

3.使用TXT編輯並存檔 Win10修正檔.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent]
"AssumeUDPEncapsulationContextOnSendRule"=dword:00000002

利用ps1轉exe(以Administrator執行要勾)壓縮後發給用戶自行安裝VPN連線,安裝方式說明請自行斟酌

4.製作VPN連線開關(要不要加@echo off看個人習慣)

a.使用TXT編輯並存檔 VPN-ON.bat

其中指令順便賦予網路資料夾權限,磁碟機代號、檔案伺服器IP、Domain請自行更改(未加網域可修改紅字部分為NAS的主機名稱,綠色是可以修改的部分,不要看到userid、password就想改成自定義)

@echo off
ECHO 請輸入公司帳號
set /p userid=User id:
ECHO 請輸入公司密碼
set /p password=Password:
rasdial.exe VPN連線名稱 %userid% %password%
ECHO off userid=[xxx.xxx.xxx.xxx%userid%],password=[%password%]
cmdkey /add:xxx.xxx.xxx.xxx /user:domain\%userid% /pass:%password%
NET USE Z: \xxx.xxx.xxx.xxx\fsname /PERSISTENT:yes

b.使用TXT編輯並存檔 VPN-OFF.bat

rasdial.exe VPN連線名稱 /DISCONNECT

結論:

這協定似乎是做給MAC用戶專用的,但其所用的網路設備若不支援L2TP你也沒轍,例如咖啡廳公用網路或便宜的家用Wifi。

Tags :

發佈留言