Pptpclient官网http://pptpclient.sourceforge.net/howto-diagnosis.phtml#pppd_options
1. 使用yum安装ppp和pptp包
yum -y install ppp
yum -y install pptp
如果yum不具备pptp,可到 http://pptpclient.sourceforge.net 下载安装,这里建议选用rpm包。
本人安装采用的是:http://sourceforge.net/projects/pptpclient/files/pptp/pptp-1.7.2/pptp-1.7.2-3.rhel5.i386.rpm/download
rpm -ivh ./pptp-1.7.2-3.rhel5.i386.rpm
2. 配置pptp
pptpsetup --create ***连接名称(自定义) --server ×××服务器IP --username ×××用户名 --password ×××密码
执行完成以后会生成文件 /etc/ppp/peers/***连接名称(自定义)
编辑该文件:
vi /etc/ppp/peers/***连接名称(自定义)
将该文件修改并完善为如下:
# written by pptpsetup
pty "pptp ×××服务器IP --nolaunchpppd"
lock
#noauth
nobsdcomp
nodeflate
name ×××用户名
remotename ***连接名称(自定义)
ipparam 服务器ip
require-mppe-128
refuse-pap
refuse-chap
refuse-eap
refuse-mschap
编辑文件 /etc/ppp/chap-secrets
vi /etc/ppp/chap-secrets
内容如下:
# Secrets for authentication using CHAP
# client server secret IP addresses
×××用户名 ***连接名称(自定义) "×××密码" *
3. 复制命令
cp /usr/share/doc/ppp-2.4.4/scripts/pon /usr/sbin/
cp /usr/share/doc/ppp-2.4.4/scripts/poff /usr/sbin/
chmod +x /usr/sbin/pon /usr/sbin/poff
4.拨***
pon ***连接名称(自定义)
5.查看是否连接
ifconfig
————————————————————————————————————-
ppp0 Link encap:Point-to-Point Protocol
inet addr:192.168.2.224 P-t-P:192.168.2.200 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1396 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:80 (80.0 b) TX bytes:80 (80.0 b)
————————————————————————————————————-
6.断开连接
poff ***连接名称(自定义)
至此,安装完成。
vi /etc/ppp/options.pptpd
去掉下面两个参数的"#"
debug \\打开调试.这样可以在/var/log/message中看到调试结果
dump
或者
logfile /var/log/pptpd.log \\指定日志文件
详细出处参考:http://www.jb51.net/article/23478.htm
1.连接完毕要添加路由才能上网
例如:
sudo route add default dev ppp0
解决办法
根基pptpclient官方描述 http://pptpclient.sourceforge.net/routing.phtml#all-to-tunnel ,在PPP端口启用的时候,/etc/ppp/ip-up会被pppd执行,内有 run-parts来运行/etc/ppp/ip-up.d内的脚脚本,传递的参数是
# This script is called with the following arguments:
# Arg Name
# $1 Interface name
# $2 The tty
# $3 The link speed
# $4 Local IP number
# $5 Peer IP number
# $6 Optional ``ipparam'' value foo
$1是默认设备名字。
若以加默认路由的脚本可以这样写
route add default dev $1
注意这个脚本不能有 .sh后缀名,经过实际测试,有后缀的都不能运行。可能和run-parts有关
2.默认设置连接win 2003搭建的×××死活链接不上
Using interface ppp0
Connect: ppp0 <--> /dev/pts/5
LCP terminated by peer (%M-O^]k^@ 乱码.....
Connection terminated.
Modem hangup
解决方法见下文文档解析
3.CentOS下此包不在pptp-linux而在pptp-setup下面。
pon,plog脚本在默认在
/usr/share/doc/ppp-*/scripts/
下面
cd /usr/share/doc/ppp-2.4.4/scripts
cp pon /usr/local/bin/
cp poff /usr/local/bin/
cp plog /usr/local/bin/
chmod +x /usr/local/bin/p*
nano /usr/local/bin/plog
#修改 /var/log/syslog为/var/log/messages#(若需要)
配置文档解析:
密码保存在
/etc/ppp/chap-secrets
这里面的内容和格式和http://ihipop.info/2010/06/1265.html#chap-secrets是一样的。参考设置即可
主机设定保存在
/etc/ppp/peers/
可以对此做进一步设定。
比如原来连win2003的PPTP一直连接不上,是因为认证方式问题
nano /etc/ppp/peers/***name
添加一行
refuse-eap
即可(VIA)
# written by pptpsetup
pty "pptp ip --nolaunchpppd"
lock
noauth
nobsdcomp
nodeflate
name ihipop
remotename ***160
ipparam ***160
require-mppe-128
refuse-eap
# written by pptpsetup
pty "pptp serverIP --nolaunchpppd"
lock
#noauth
nobsdcomp
nodeflate
name username
remotename my***
ipparam my***
require-mppe-128
refuse-pap
refuse-chap
refuse-eap
refuse-mschap
这些文件不由得让我想起来了pppoeconf配置的ADSL拨号。其中在/etc/ppp/peers/dsl-provider有如下两个参数
demand
idle 300
这里demand表示自动按需拨号,idle表示空闲多少秒以后自动断线。
而persist则代表了一直保持连接
转载于:https://blog.51cto.com/shenyj/1599396