vpn之pptp服务器实现远程访问

之前介绍过通过openvpn实现远程接入到公司内网,但是openvpn服务器配置比较麻烦而且还需要安装客户端软件,而pptp配置简单,并且客户端直接新建vpn连接即可,用起来较之方便很多。

下面就来介绍下吧:

公司公网ip:222.12.45.11(假设)

pptp服务器:192.168.3.16

pptp部署前所需要了解:

1.dkms:可以维护内核外的驱动程序,动态加载和卸载所需模块

2.kernel_ppp_mppe:pptp与mppe技术提供了用以对保密数据进行封装与加密的vpn服务器。mppe通过ms-chap、ms-chap v2身份验证过程所生成的机密密钥对ppp帧进行加密

3.ppp:pptp使用该协议对用户数据进行封装,然后将ppp数据帧封装到ip数据包里,经由ip网络传播。

4.pptpd:服务端软件

5.pptp协议号:47

6.pptp端口号:1723

7.tup/tap:实现隧道包封装

部署:

1.检查服务器是否支持ppp协议

[yanggd@vpn ~]$ modprobe ppp-compress-18 && echo ok okok表示支持

2.检查ppp是否支持mppe

[yanggd@vpn ~]$ strings '/usr/sbin/pppd'|grep -i mppe|wc –lines42输出为0表示不支持;为30或更大的数字表示支持

3.检查服务器是否支持tup/tap

[root@MyServer ~]# cat /dev/net/tuncat: /dev/net/tun: File descriptor in bad state # 返回这个结果表示已经正确安装配置了TUN/TAPcat: /dev/net/tun: No such device# 返回这个结果,表示没有正确装配TUN/TAP,请自己装配下。4.下载相关yum源并安装[root@vpn yanggd]# rpm -Uvh [root@vpn yanggd]# yum install pptp dkms ppp

配置pptp

1.设置客户端的ip

[root@vpn yanggd]# vim /etc/pptpd.confoption /etc/ppp/options.pptpddebuglogwtmplocalip 192.168.3.2#pptp服务器端的虚拟ipremoteip 192.168.3.3-225#pptp客户端的地址池2.修改pptp的加密协议及客户端的dns[root@vpn yanggd]# vim /etc/ppp/options.pptpd name pptpd#服务名称,若修改需要和其他配置保持一致refuse-paprefuse-chaprefuse-mschaprequire-mschap-v2#使用mschap-v2加密require-mppe-128#使用mppe加密ms-dns 8.8.8.8#为客户端添加主dnsms-dns 8.8.4.4#为客户端添加备dnsproxyarplocknobsdcomp novjnovjccompnologfd3.pptp用户的密码分配及访问限制[root@vpn yanggd]# vim /etc/ppp/chap-secrets # Secrets for authentication using CHAP# clientserversecretIP addressestest*test_123192.168.3.44test1*test_456*#用户名限定登陆的ip密码客服端连接成功所分配的ip5.开启服务器的系统路由模式,支持包转发[root@vpn yanggd]# vim /etc/sysctl.conf net.ipv4.ip_forward = 1 [root@vpn yanggd]# sysctl -p6.设置防火墙策略/sbin/iptables -A INPUT -i eth0 -p gre -m comment –comment "pptp–gre" -j ACCEPT#允许pptp的47号协议:gre,注意不是47端口/sbin/iptables -A INPUT -i eth0 -p tcp -m multiport –dport 1723 -m comment –comment "pptp–gre" -j ACCEPT#开启pptp的1723端口/sbin/iptables -A FORWARD -p tcp –syn -i ppp+ -j TCPMSS –set-mss 1356#若pptp成功连接后不能够正常上网或上网有的网页能打开,是因为报文问题7.在内网网关做下端口映射,将内网pptp的1723端口映射到公网ip上,这样我们就可以通过远程连接pptp来建立vpn了。

有的内网用户需要做snat才能上网:

/sbin/iptables -t nat -A POSTROUTING -s 192.168.3.0/24 -p tcp –dport 1723 -j SNAT –to-source 222.12.45.11

客户端配置:

1.新建连接

2.选择加密协议

正常连接后,,我们可以看到pptp服务器已经建立连接并生成虚拟ip了

[root@vpn yanggd]# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWNlink/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host loinet6 ::1/128 scope hostvalid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000link/ether 00:50:56:87:3b:96 brd ff:ff:ff:ff:ff:ffinet 192.168.3.16/24 brd 10.10.255.255 scope global eth0inet6 fe80::250:56ff:fe87:3b96/64 scope linkvalid_lft forever preferred_lft forever36: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1396 qdisc pfifo_fast state UNKNOWN qlen 3link/pppinet 192.168.3.2 peer 192.168.3.2/32 scope global ppp0当然,客户端也会生成一个虚拟ip,这里就不贴图了。

ok,现在vpn已经好了,我们可以在家轻松接入公司内网进行办公了。

击败不等于击倒,跌倒了,爬起来,想一想,为什么跌倒了,

vpn之pptp服务器实现远程访问

相关文章:

你感兴趣的文章:

标签云: