|
最近搞通了sarge下的pptpd+mppe配置,为了能给大家提供比较方便,也为了方便自己将来再重新配置pptpd。特此记录下配置pptpd的全过程。
1、安装新的内核:
[PHP]
apt-get install kernel-source-2.6.6
cd /usr/src
tar xfj kernel-source-2.6.6.tar.bz2
ln -fs kernel-source-2.6.x linux
[/PHP]
到http://www.polbox.com/h/hs001/下载MPPE升级补丁,我用的是kernel 2.6.6,
[PHP]wget http://www.polbox.com/h/hs001/linux-2.6.6-mppe-mppc-1.0.patch.gz
cd linux
zcat ../linux-2.6.6-mppe-mppc-1.0.patch.gz |patch -p1
cp /boot/config-2.6.6-1-686-smp .config
make oldconfig[/PHP]
在mppe选择项上选择m,编译成内核模块,接着编译内核:
[PHP]make-kpkg --bzimage --initrd kernel-headers kernel-image
cd ..
dpkg -i kernel-headers-2.6.6-2_10.00.Custom_i386.deb kernel-image-2.6.6-2_10.00.Custom_i386.deb[/PHP]
把新内核设置到GRUB或者LILO里面
2、添加模块
编辑/etc/modules加上mppe模块,并重建/etc/modules.conf和/etc/chandev.conf
[PHP]echo "ppp_mppe_mppc" >>/etc/modules
update-modules[/PHP]
3、安装ppp和pptpd
[PHP]apt-get install ppp pptpd[/PHP]
并且用rcconf工具配置好启动的时候自动执行
4、配置pptpd
编辑/etc/ppp/pptp-options
[PHP]
# /etc/ppp/pptp-options
auth
require-mschap
require-mschap-v2
require-mppe
require-mppe-128
require-mppe-40
## DNS和WINS设置,改成你自己的
ms-dns 192.168.100.254
ms-wins 192.168.100.252
## 你的网络掩码
netmask 255.255.255.0
## 其他的设置
nodefaultroute
proxyarp
lock
##名称设置,与chap-securaty配合着用
name mydomain.com[/PHP]
编辑/etc/ppp/chap-secrets,IP地址也可以指定,但是要在/etc/pptpd.conf指定的范围内
[PHP]
# /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
user1 mydomain.com u41r1 "*"
user2 mydomain.com u41r2 "*"
[/PHP]
编辑/etc/pptpd.conf,localip要用内部网络的地址,可以用ifconfig查到
[PHP]
# /etc/pptpd.conf
option /etc/ppp/pptpd-options
localip 192.168.100.247
remoteip 192.168.100.192-207
[/PHP]
5、设置路由,编辑/etc/init.d/addroutes。
# 把你想要到达的都加上
[PHP]
# /etc/init.d/addroutes
/sbin/route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.100.1
[/PHP]
运行rcconf,把addroutes加上,这样每次开机路由就准备好了
6、想要拨通之后还能访问互联网,打开SNAT
[PHP]/sbin/iptables -t nat -A POSTROUTING -o eth1 -s 192.168.100.192/28 -j MASQUERADE[/PHP]
7、设置Windows的拨号,以Windows XP为例:
开始--〉设置--〉网络连接--〉创建一个新的连接,下一步--〉连接到我的工作场所的网络--〉虚拟专用网络连接--〉名称(用你喜欢的名字)--〉初始连接(取决于是否已经可以上互联网)--
〉主机或者IP地址(可以用申请到的动态DNS)--〉完成
如果pptpd服务器同时也是iptables网关,并且有相应的规则限制,此时在内网拨号,应该拨pptpd服务器的内网地址。
8、测试
用新的内核启动机器,并把PPTPD启动好,在Windows那边拨号,用户名/密码用:user1/u41r1,通了之后可以看看拨号状态的详细信息。
以上的配置如果有问题,请仔细检查,修改成适合你的环境的藏书。
另外还可以在/etc/pptpd.conf和/etc/ppp/options-pptpd中加一行debug,在/var/log/syslog产生纪录,可以用于分析故障原因;/var/log/message也有相应的纪录。
累死了,linux传教士真难当 |
|