系统环境: CentOS 5.4 Final
网卡: eth0: 98.126.x.x
先检查系统的MPPE,基本上CentOS本身都有,看到ok就可继续往下进行,不行的话就去打一下补丁,网上到处都是。
modprobe ppp-compress-18 && echo ok
CentOS5.4系统本身安装已经带了ppp版本,可以用这个版本,也可以重新安装,这里我卸载了,全部自己重新安装。
rpm -q ppp
rpm -e rp-pppoe
rpm -e ppp
rm -rf /etc/ppp
所需要的软件如下:
wget http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.3.4-1.rhel5.1.i386.rpm
wget http://poptop.sourceforge.net/yum/stable/packages/ppp-2.4.4-9.0.rhel5.i386.rpm
1.安装
rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm
rpm -ivh ppp-2.4.4-9.0.rhel5.i386.rpm
2.设置Server基本配置
主要的配置文件是放在
/etc/pptpd.conf
/etc/ppp/options.pptpd
/etc/ppp/chap-secrets
vi /etc/pptpd.conf
在配置的最下面添加如下信息
localip 192.168.8.1-30
remoteip 192.168.8.50-80,192.168.8.100-200
(1)定义vpn服务器上的IP。(是客户机连上后能与vpn 服务通信的IP,也就是客户机可能过这个地址访问vpn 服务器)
(2)定义客户端的IP 段。(用-来连接连续的ip,用半角逗号来分隔不同段的ip)
vi /etc/ppp/options.pptpd
在最后增加一行
ms-dns 4.2.2.2 (你可以改成你自己常用的dns)
vi /etc/ppp/chap-secrets 给用户权限和分配IP
格式:用户,服务 密码 * (通陪符)
# vi /etc/ppp/chap-secrets
内容如下:
# Secrets for authentication using CHAP
# client server secret IP addresses
test01 pptpd 123456 * (自动获取)
test02 pptpd 654321 192.168.7.230 (指定IP)
3.打开linux内核的路由功能(保证每次开机都得运行打开路由功能,加入vi /etc/rc.local)
echo “1″>/proc/sys/net/ipv4/ip_forward
(确认系统SELINUX是否关闭 vi /etc/selinux/config,看看里面SELINUX=disabled)
或者编辑/etc/sysctl.conf加入下面的语句:
net.ipv4.ip_forward = 1
要使sysctl立即生效, 运行下面的命令: -
sysctl -p
4.如果开启了iptables,就需要下面规则
打开 1723,47端口iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -p tcp --dport 47 -j ACCEPT
5.启动和停止VPN服务
# /etc/rc.d/init.d/pptpd start 启动
# /etc/rc.d/init.d/pptpd stop 关闭
# /etc/rc.d/init.d/pptpd restart 重启
为了使VPN服务可以在系统引导的时候自动启动,执行:
# chkconfig pptpd on
用netstat -anl 查看一下服务器上是否以开放了1723端口
6.这样VPN的服务器就应该可以正常启动了,可是想正常的使用,还需要一条命令,这条命令在网络中很多文章里面是没有的。# iptables -t nat -A POSTROUTING -s 192.168.8.0/24 -o eth0 -j SNAT --to 98.126.x.x
新闻热点
疑难解答