通常情况下×××有PPTP,IPSEC,L2TP 这几种,PPTP最简便,IPSEC ×××最通用,各个平台都支持,L2TP ×××最安全。下面我们来看看具体配置过程:
第一步:下载与安装
注:首先确认要安装×××服务的操作系统版本,使用uname -i确认是32位(i386)还是64(x86)位,对应下载相应版本的软件
所用软件有:
kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
ppp-devel-2.4.4-14.1.fc9.i386.rpm
pptpd-1.3.4-2.fc9.i386.rpm
下载地址:http://poptop.sourceforge.net/yum/stable/
下载完后依次安装:
rpm -ivhdkms-2.0.17.5-1.noarch.rpm
rpm -ivhkernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
rpm -Uvh ppp-devel-2.4.4-14.1.fc9.i386.rpm
rpm -ivh pptpd-1.3.4-2.fc9.i386.rpm
安装完成之后用以下命令检查内核MPPE补丁是否安装成功,MPPE module可否载:
modprobeppp-compress-18 && echo success
然后用以下命令检查PPP是否支持MPPE:
strings'/usr/sbin/pppd'|grep -i mppe|wc --lines
(如果以上命令输出为“0”则表示不支持;输出为“30”或更大的数字就表示支持,我的是46)
第二步:修改配置文件
编辑 vi /etc/pptpd.conf 文件,确定本地×××服务器的IP地址和客户端登录后分配的IP地址范围。
配置如下:
option /etc/ppp/options.pptpd
logwtmpnn
localip 10.0.1.2 //×××服务器的IP地址
remoteip 192.168.0.234-238 //分给连入的vpn客户端的ip地址
注意:为了安全性起见,localip和remoteip尽量不要同一个网段。
编辑 /etc/ppp/options.pptpd 文件,我的配置如下:
name pptpd //pptpd服务器的名称
refuse-pap //拒绝pap身份验证模式
refuse-chap //拒绝chap身份验证模式
refuse-mschap //拒绝mschap身份验证模式
require-mschap-v2
require-mppe-128
注:ms-dns指的是服务器的DNS地址,在配置之前使用cat /etc/resolv.conf查看DNS地址
ms-dns 8.8.8.8 //分给连入的vpn客户端的dns
ms-dns 8.8.8.4
proxyarp //建立ARP代理键值
lock //锁定客户端PTY设备文件
nobsdcomp //禁用BSD压缩模式
novj
novjccomp //禁用 Van Jacobson 压缩模式
nologfd // 禁止将错误信息记录到标准错误输出设备(stderr)
编辑 /etc/ppp/chap-secrets文件,这里配置连接到×××服务器的用户、密码和IP等信息:
# Secrets forauthentication using CHAP
# client server secret IPaddresses
vpn * “vpn” *
说明:上面第二行代码的四项内容分别对应第一行中的四项,vpn是客户端用户名,vixtel是客户端密码,第一个*是指×××服务器的名字,这里用*表示自动识别服务器,第二个*表示可以拨入的客户端IP地址,这里用*表示没有限制。
启动pptp服务
service pptpd start //测试一下能不能连接上去,此时认证上去还不能上网
第三步:NAT配置
修改内核配置,使其支持转发,编辑/etc/sysctl.conf这个文件,将文件中
net.ipv4.ip_forward= 0 改为 net.ipv4.ip_forward = 1
保存退出,然后使用以下命令使其生效:
sysctl –p
iptables -t nat -A POSTROUTING -s 192.168.0.234/29 -o eth7 -j SNAT --to 183.237.204.2
-s 源地址,也就是分给客户的地址
--to 目的地址,也就是公网地址
service iptables status //查看防火墙运行状态
打开防火墙端口,使外部用户能够连接pptp服务器,在防火墙中添加如下规则:(如果防火墙已经关闭了防火墙就不必做这些设置)
/sbin/iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --dport 47 -j ACCEPT
/sbin/iptables -A INPUT -p gre -j ACCEPT
最后重启pptp服务
service pptpd restart
至此,pptp服务器的配置就完成了。
第四步:在客户端测试连接×××