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、更新软件包数据库:
0
1
|
apt-get update
|
3、debian自带pptpd软件包:
0
1
|
apt-get install -y pptpd
|
4、编辑/etc/pptpd.conf,在文件最后添加:
0
1
2
|
localip 192.168.92.1
remoteip 192.168.92.11-16
|
localip 是vpn服务器的地址
remoteip 是vpn客户端的地址,可以配置成一个地址范围
5、编辑/etc/ppp/pptpd-options:
0
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,添加访问账户:
0
1
|
username pptpd password *
|
依次是:用户名 VPN服务名称 密码 分配IP地址
*表示不限制
7、编辑/etc/sysctl.conf:
0
1
|
net.ipv4.ip_forward=1
|
去掉前边的#号,然后执行以下命令使配置生效:
0
1
|
sysctl -p
|
8、编辑/etc/rc.local(或者/etc/init.d/rc.local),在系统启动时添加路由:
适合于OpenVZ架构的VPS,12.34.56.78为您VPS的公网IP地址
0
1
|
iptables -t nat -A POSTROUTING -s 192.168.92.0/24 -j SNAT –to-source VPN服务器的IP
|
适合于XEN架构的VPS
0
1
|
iptables -t nat -A POSTROUTING -s 192.168.92.0/24 -o eth0 -j MASQUERADE
|
添加到文件内容的最前边就行了。
然后执行命令:
0
1
|
chmod +x /etc/rc.local
|
设置rc.local的执行权限。
9、执行命令重启系统:
0
1
|
reboot
|
10、在windows客户端创建VPN连接。
访问以下地址试试:
http://192.168.92.1(前提是你的VPS安装了web服务)
http://www.facebook.com
如果不成功,一般就是配置的问题了,自己再调整下配置试试。
修改pptp配置后,可以通过以下命令重启pptpd:
0
1
|
/etc/init.d/pptpd restart
|
修改rc.local文件需要重启操作系统,使用
0
1
|
reboot
|
还有些其它可能碰到的问题,这里提供几个:
1、表现为:只能访问有限的网站,SSH 可用,但 scp 不行,ftp 能握手,但传不了文件。
在/etc/rc.local中添加如下命令,然后重启。
0
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错误。
执行以下命令:
0
1
|
mknod /dev/ppp c 108 0
|
祝顺利!