在Ubuntu18.04.2服务器下搭建PPTP

因为公司业务的需要,需要搭建一个vpn。基于PPTP搭建简单,使用方便,所以搭建基于PPTP协议的VPN。

废话不多说了,下面开整:

1、更新系统软件

sudo apt-get -y update
sudo apt-get -y upgrade

2、安装pptpd和iptables

sudo apt-get install -y pptpd iptables

3、修改配置文件/etc/pptpd.conf(配置远程vpn分配的ip)

sudo vim /etc/pptpd.conf
#找到如下两行,修改成自己想要的
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
比如我的
localip 192.168.0.1
remoteip 192.168.0.10-60

4、修改配置文件/etc/pptpd.conf(配置DNS)

sudo vim /etc/ppp/pptpd-options
找到
#ms-dns 10.0.0.1
#ms-dns 10.0.0.2
取消注释,修改成如下(根据自己需要填写):
ms-dns 223.5.5.5
ms-dns 8.8.8.8

5、修改配置文件/etc/ppp/chap-secrets(设置pptpd的账号等信息)

sudo vim /etc/ppp/chap-secrets
添加自己设置的账号等信息,各位需要修改的就是vpnuser和123456了
#Secrets for authentication using CHAP
#client        server  secret                  IP addresses
vpnuser      pptpd   123456             *

以上pptpd服务器配置基本完工,简单而快速,没有任何难度。

下面开始说,影响你vpn是否能使用的配置了。

1、开启路由转发

查看系统内核是否已经开启了路由转发(新装系统一般是开启的)
sudo cat /proc/sys/net/ipv4/ip_forward
如果得到的值是1说明已经开启,如果没有就开启
sudo echo 1 > /proc/sys/net/ipv4/ip_forward
sudo vim /etc/sysctl.conf
找到对应参数,修改成如下:
net.ipv4.ip_forward=1
保存
sudo sysctl -p

2、配置防火墙规则

sudo iptables -A INPUT -p gre -j ACCEPT 
sudo iptables -A INPUT -p tcp --dport 1723 -j ACCEPT   
sudo iptables -A INPUT -p tcp --dport 47 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -s 192.168.0.1/24 -o eth0 -j MASQUERADE
NAT转发的这条信息根据自己之前的配置修改,自己的网卡叫啥自己看

因为Ubuntu是不保存iptables规则的,重启电脑就失效了,有个比较方便省事的方法:

把上面的四个规则写入到/etc/rc.local中

sudo vim /etc/rc.local
######################pptpd iptables#####################################
sudo iptables -A INPUT -p gre -j ACCEPT 
sudo iptables -A INPUT -p tcp --dport 1723 -j ACCEPT   
sudo iptables -A INPUT -p tcp --dport 47 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -s 192.168.0.1/24 -o eth0 -j MASQUERADE
##############################################################################

3、启动pptpd服务

sudo systemctl enable pptpd
sudo systemctl start pptpd

4、测试

使用配好的账号即可,一般不会有问题,windwos配置百度下即可。

注意,下面开始讲一个大坑,这个坑不解决,vpn就不完美。

诸位,连接上vpn后会发现有一些网站无法访问,比如百度、淘宝等。怎么回事呢?

在这里我就不卖关子了,告诉你是mtu的问题,如下图:

这个问题如何解决了,相信各位一百度会发先如下的解决建议:

我要说的是,经过本人的实际测试,以上方法除了手动修改的那个,其他都不管用,修改并不能生效;并且手动修改的只对当前连接有效。一个公司会有多个人连接vpn的这种方式明显蛋疼,不符合实际生产需要的。

那么如何解决呢?经过研究,其实很简单。只需要在一个配置文件里添加一行参数即可。

修改配置文件/etc/ppp/ip-up即可,在文件的最后一行加入如下内容即可

sudo vim /etc/ppp/ip-up
/sbin/ifconfig $PPP_IFACE mtu 1454
#mtu的值大家根据实际更改即可

大家可以看一下这个配置文件,其实很简单,一看就懂了。

修改完成后,保存退出,重启pptpd

再次连接后,可以发现mtu值就是你设置的mtu值,测试百度等网站都可以正常运行。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值