使用VPN(虛擬私人網路)有很多好處,包括透過加密您的流量來保護您的網路安全,並協助您從任何地方存取被封鎖的內容/網站/網路應用程式。此外,VPN還可以讓您匿名瀏覽網路。
在本文中,您將學習如何在CentOS/RHEL、Ubuntu和Debian Linux發行版中快速自動設定自己的IPsec/L2TP VPN伺服器。
前提條件
- 一台來自任何提供者(如Linode)的新CentOS/RHEL或Ubuntu/Debian VPS(虛擬私人伺服器)。
在Linux中設定IPsec/L2TP VPN伺服器
為了設定VPN伺服器,我們將使用Lin Song建立的一組優秀的Shell腳本,這些腳本安裝Libreswan作為IPsec伺服器,並將xl2tpd作為L2TP提供者。該工具包還包括新增或移除VPN用戶、升級VPN安裝等腳本。
首先,透過SSH登入您的VPS,然後執行適合您發行版的命令以設定VPN伺服器。預設情況下,腳本將為您產生隨機的VPN憑證(預先共用金鑰、VPN使用者名稱和密碼),並在安裝結束時顯示它們。
如果您希望使用自己的憑證,首先需要產生一個強密碼和PSK,如下所示:
『`bash
```
接下來,將這些產生的值按以下命令設置,所有值必須放在'單引號'中,如下所示:
-
VPN_IPSEC_PSK
– 您的IPsec預共用金鑰。 -
VPN_USER
– 您的VPN使用者名稱。 -
VPN_PASSWORD
– 您的VPN密碼。
CentOS/RHEL系統
『`bash
```
Debian和Ubuntu系統
『`bash
```
主要安裝的軟體包包括: bind-utils
、 net-tools
、 bison
、 flex
、 gcc
、 libcap-ng-devel
、 libcurl-devel
iptables-services
libselinux-devel
、 nspr-devel
、 nss-devel
、 pam-devel
、 xl2tpd
iptables-services
、 systemd-devel
、 fipscheck-devel
、 libevent-devel
和fail2ban
(用於保護SSH),以及它們對應的依賴項。然後,它將從原始碼下載、編譯和安裝Libreswan,並啟用和啟動必要的服務。
安裝完成後,VPN的詳細資訊將顯示,如下圖所示。
接下來,您需要設定VPN客戶端。對於具有圖形使用者介面的桌面或筆記型電腦,請參考本指南:如何在Linux上設定L2TP/IPsec VPN用戶端。
要在行動裝置(如Android手機)上新增VPN連接,請前往設定-> 網路和網路(或無線和網路-> 更多) -> 進階-> VPN。選擇新增VPN的選項。 VPN類型應設定為IPSec Xauth PSK,然後使用上述的VPN閘道和憑證。
如何在Linux中新增或刪除VPN用戶
若要建立新的VPN用戶或使用新密碼更新現有VPN用戶,請下載並使用add_vpn_user.sh
腳本,請使用以下wget
指令:
bash
$ wget -O add_vpn_user.sh https://raw.githubusercontent.com/hwdsl2/setup-ipsec-vpn/master/extras/add_vpn_user.sh
$ sudo sh add_vpn_user.sh 'username_to_add' 'user_password'
若要刪除VPN用戶,請下載並使用del_vpn_user.sh
腳本:
bash
$ wget -O del_vpn_user.sh https://raw.githubusercontent.com/hwdsl2/setup-ipsec-vpn/master/extras/del_vpn_user.sh
$ sudo sh del_vpn_user.sh 'username_to_delete'
如何在Linux中升級Libreswan安裝
您可以使用vpnupgrade.sh
或vpnupgrade_centos.sh
腳本來升級Libreswan安裝。確保在腳本中編輯SWAN_VER
變數以指定您要安裝的版本。
CentOS/RHEL系統
『`bash
```
Debian和Ubuntu系統
『`bash
```
如何在Linux中卸載VPN伺服器
若要解除安裝VPN安裝,請執行下列操作。
在RHEL/CentOS上
『`bash
```
然後打開/etc/sysconfig/iptables
配置文件,刪除不需要的規則,並編輯/etc/sysctl.conf
和/etc/rc.local
文件,刪除兩個文件中以# Added by hwdsl2 VPN script
註釋後的行。
在Debian/Ubuntu上
bash
$ sudo apt-get purge xl2tpd
接下來,編輯/etc/iptables.rules
設定文件,刪除任何不需要的規則。此外,如果存在,編輯/etc/iptables/rules.v4
。
然後編輯/etc/sysctl.conf
和/etc/rc.local
文件,刪除兩個文件中以# Added by hwdsl2 VPN script
註釋後的行。如果存在,請不要刪除exit 0
。
可選地,您可以刪除在VPN設定過程中建立的某些檔案和目錄:
『`bash
```
若要設定基於IPSec的站點到站點VPN,請查看我們的指南:
結論
到此為止,您自己的VPN伺服器已成功啟動並運行。您可以透過下面的評論表單分享任何問題或回饋。
參與我們的活動
嘿,TecMint讀者們,令人興奮的消息!每個月,我們的頂級部落格評論者將有機會贏得豐厚的獎勵,例如免費的Linux電子書(如RHCE、RHCSA、LFCS、Learn Linux和Awk),每本價值20美元!了解更多關於比賽的信息,並透過分享您的想法來贏得機會!