欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ECS 的 Ubuntu 系统中如何配置 VPN

程序员文章站 2022-06-01 20:39:05
...

本文来自于【阿里云官方镜像站:https://developer.aliyun.com/mirror/?utm_content=g_1000307095 】

原文链接:https://developer.aliyun.com/article/747707?spm=a2c6h.12873581.0.0.54c47e46mLfYep

镜像下载、域名解析、时间同步请点击 阿里巴巴开源镜像站

配置方法

在ECS的Ubuntu系统中配置VPN的操作,分为在服务端配置和在VPN客户端配置,请参考如下。

注:本文相关配置和说明仅用于示例和操作指引,阿里云不对相关操作结果及由此产生的问题负责。

一、服务端配置

1、登录服务器,执行如下命令,安装pptpd。

sudo apt-get install pptpd

2、执行如下命令,编辑配置文件。

sudo vi /etc/pptpd.conf

3、在“TAG: localip“字段后面添加如下内容,然后保存并退出。

localip 192.168.0.1 remoteip 192.168.0.234-238,192.168.0.245

4、执行如下命令,编辑文件。

sudo vi /etc/ppp/pptpd-options

5、删除“#ms-dns”字段前面的 # 号,并修改“DNS server”字段成如下内容,然后保存并退出。

DNS server: 223.5.5.5

6、在“/etc/ppp/chap-secrets”文件中,添加账号、服务器名、密码和IP限制。
7、编辑“/etc/sysctl.conf”文件,删除”#net.ipv4.ip_forward=1”字段前的 # 号,然后保存并退出。
8、执行如下命令,加载系统参数。

sudo sysctl –p

注:若运行后显示“net.ipv4.ip_forward = 1”,表示修改生效。

9、依次执行如下命令,使用iptables建立一个NAT。

sudo apt-get install iptables 
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

注:eth0代表网卡,可以通过ifconfig命令查看。

10、编辑“/etc/network/interfaces”文件,在“eth0/eth1..”字段下面添加如下内容。

pre-up iptables-restore < /etc/iptables-rules

11、执行如下命令,重启pptpd使配置生效。

sudo /etc/init.d/pptpd restart

二、VPN客户端配置

1、执行如下命令,查看本地外网IP地址。

curl http://members.3322.org/dyndns/getip

系统显示类似如下:

2、执行如下命令,安装pptp客户端软件。

sudo apt-get install pptp-linux

系统显示类似如下:

3、执行如下命令,初始化一个名为test的VPN连接通道。

sudo pptpsetup --create test --server 58.xx.xx.178 --username xxx--password xxx--encrypt --start

4、执行如下命令,删除默认路由。

sudo ip route del default

注:删除后会无法远程需要通过管理终端登陆。

5、执行如下命令,添加默认路由指向ppp0设备。

sudo ip route add default dev ppp0

6、执行如下命令,测试出口的IP地址,确认IP地址已经变成VPN服务器的IP地址。

curl http://members.3322.org/dyndns/getip

7、执行如下命令,关闭VPN。

sudo poff test

系统显示类似如下,查看设备信息为 not found。
8、执行如下命令,开启VPN。

sudo pon test

系统显示类似如下,查看设备信息为ppp0设备的详细信息。

9、执行如下命令,删除默认路由。

sudo ip route del default

10、执行如下命令,添加ECS网关为默认路由,即可通过本地网络实现VPN联网。

sudo ip route add default via [$IP]

注:[$IP]为ECS服务器的网关。