Linux(VPS+Debian)搭建配置VPN(PPTP)服务
关于在linux系统上安装vpn的操作说明,网上已经有很多了,各种方法大同小异。
大家使用VPN主要解决两个问题:
1、不同网段的互访问题,比如从外网访问内网,或者从一个内网访问另一个内网。
2、网络屏蔽问题,通过VPN路由访问一些不能访问的网站,这个你懂的。
根据网上的资料,很快解决了第一个问题,但是第二个问题折腾了两天才搞好。现在将安装的过程记录下来,给需要的朋友提供一个参考吧。
常用的VPN服务器一般分两种,一种是SSL VPN,代表软件有openvpn,这个VPN软件有Windows下的客户端软件;另外一种是PPTP VPN,Windows自带这种VPN的客户端支持。本文介绍的VPN环境是在yardvps购买的xen型的vps,安装的32位debian 5系统,使用PPTP VPN。
1、使用SSH工具登陆,最好是root权限的用户:
2、更新软件包数据库:
1 |
apt-get update |
3、debian自带pptpd软件包:
1 |
apt-get install -y pptpd |
4、编辑/etc/pptpd.conf,在文件最后添加:
1 2 |
localip 192.168.92.1 remoteip 192.168.92.11-16 |
localip 是vpn服务器的地址
remoteip 是vpn客户端的地址,可以配置成一个地址范围
5、编辑/etc/ppp/pptpd-options:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
name pptpd refuse-pap refuse-chap refuse-mschap require-mschap-v2 require-mppe-128 ms-dns 8.8.8.8 ms-dns 8.8.4.4 #nodefaultroute #debug #dump proxyarp lock nobsdcomp #nologfd logfile /var/log/pptpd.log |
name 是vpn服务名称
refuse/require 是数据加密协议定义
ms-dns 这里使用的Google提供的免费DNS
6、编辑/etc/ppp/chap-secrets,添加访问账户:
1 |
username pptpd password * |
依次是:用户名 VPN服务名称 密码 分配IP地址
*表示不限制
7、编辑/etc/sysctl.conf:
1 |
net.ipv4.ip_forward=1 |
这个在另外一篇文章里面也有《Debian环境下架设L2TP/IPSec》,这个主要是ipv4的转发,开启后流量才能通过vps转发出去
去掉前边的#号,然后执行以下命令使配置生效:
1 |
sysctl -p |
8、编辑/etc/rc.local(或者/etc/init.d/rc.local),在系统启动时添加路由:
适合于OpenVZ架构的VPS,12.34.56.78为您VPS的公网IP地址
1 |
iptables -t nat -A POSTROUTING -s 192.168.92.0/24 -j SNAT --to-source VPN服务器的IP |
适合于XEN架构的VPS
1 |
iptables -t nat -A POSTROUTING -s 192.168.92.0/24 -o eth0 -j MASQUERADE |
添加到文件内容的最前边就行了。
然后执行命令:
1 |
chmod +x /etc/rc.local |
设置rc.local的执行权限。
9、执行命令重启系统:
1 |
reboot |
10、在windows客户端创建VPN连接。
访问以下地址试试:
http://192.168.92.1(前提是你的VPS安装了web服务)
http://www.facebook.com
如果不成功,一般就是配置的问题了,自己再调整下配置试试。
修改pptp配置后,可以通过以下命令重启pptpd:
1 |
/etc/init.d/pptpd restart |
修改rc.local文件需要重启操作系统,使用
1 |
reboot |
还有些其它可能碰到的问题,这里提供几个:
1、表现为:只能访问有限的网站,SSH 可用,但 scp 不行,ftp 能握手,但传不了文件。
在/etc/rc.local中添加如下命令,然后重启。
1 |
iptables A FORWARD -s 192.168.92.0/24 -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j TCPMSS --set-mss 1356 |
2、连接过程中无法通过帐号密码验证,syslog显示:
pppd[26133]: Couldn’t open the /dev/ppp device: No such file or directory
客户端提示619错误。
执行以下命令:
1 |
mknod /dev/ppp c 108 0 |
至此,pptp就假设完成了
近期评论