使用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
、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美元!了解更多关于比赛的信息,并通过分享您的想法来赢得机会!