RedHat Linux 9下面的VPN Server架设

Server: Red Hat Linux 9 Kernel 2.6.10
Client: Win2000 Pro/Server SP4 , WinXP SP2

Server所需要的东东
www.kernel.org
kernel: linux-2.6.10.tar.bz2

http://www.polbox.com/h/hs001/
kernel_patch: linux-2.6.10-mppe-mppc-1.2.patch.gz
pppd: ppp-2.4.3.tar.gz
pppd_patch: ppp-2.4.3-mppe-mppc-1.1.patch.gz
pptpd: pptpd-1.2.3.tar.gz

为了方便起见,可以把它们放在同一个目录下
我不喜欢用RPM方式安装,所以都是用的源码方式编译安装

一、先给内核打补丁

# tar zjvf linux-2.6.10.tar.bz2
# gunzip linux-2.6.10-mppe-mppc-1.2.patch.gz
# patch -p0 -i linux-2.6.10-mppe-mppc-1.2.patch
# ln -s linux-2.6.10 linux
# cd linux
# make menuconfig

Device Drivers -> Networking Support->
把 "PPP support" 编进内核,你也可作为模块编译

PPP Support for async serial ports
PPP Support for sync tty ports
PPP Deflate compression
Microsoft PPP compression/encryption (MPPC/MPPE)"

Cryptographic options
把 "Cryptographic API" 编进内核,你也可作为模块编译
确保SHA1 和 ARC4 支持已经选上
SHA1 digest algorithm
ARC4 cipher algorithm

保存配置文件,退出

编译内核
make all modules modules_install install

修改/etc/modprobe.conf (2.4的Kernel请修改/etc/modules.conf)

重启,进入2.6.10

二、安装PPP
安装之前先用 rpm -qa |grep ppp 看一下是否系统有安装RH9自带的ppp-2.4.1-10
如果有的话, 用 rpm -e 卸载先,可能还有依赖关系,依次卸载,如

#rpm -e rp-pppoe-3.5-2
#rpm -e wvdial-1.53-9
#rpm -e ppp-2.4.1-10

# tar xzvf ppp-2.4.3.tar.gz
# gunzip ppp-2.4.3-mppe-mppc-1.1.patch
# patch -p0 -i ppp-2.4.3-mppe-mppc-1.1.patch
# cd ppp-2.4.3
# ./configure
# make; make install

三、安装 pptpd

#tar xzvf pptpd-1.2.3.tar.gz
# ./configure
# make; make install

相关的配置文件

/etc/pptpd.conf # pptpd的基本配置文件
/etc/ppp/options.pptpd # VPN拨号选项
/etc/ppp/chap-secrets # 用户名和密码信息
/etc/modules.conf # 模块加载信息 (2.4的Kernel请修改/etc/modules.conf)

vi /etc/pptpd.conf

ppp /usr/local/sbin/pppd #指定pppd的路径
option /etc/ppp/options.pptpd # 指定option 文件位置
localip 192.168.1.3 #同服务器的LAN地址
remoteip 192.168.1.230-239 #分配給客户端的ip,本例范围从192.168.1.230到192.168.1.239。
您也可以单独指定某个地址或者多段地址,用逗号隔开
如在192.168.1.230-239,192.168.1.254

vi /etc/ppp/options.pptpd

name *
lock
mtu 1450
mru 1450
proxyarp
auth
ipcp-accept-local
ipcp-accept-remote
lcp-echo-failure 3
lcp-echo-interval 5
deflate 0
# Handshake Auth Method - 加密协议类型
+chap
+mschap-v2
# Data Encryption Methods
mppe required,stateless

其它详细说明请参见 man pppd 或者 man pptpd

vi /etc/ppp/chap-secrets
#client server Password IP Address
test * 12345 *

因为密码是明文显示的,最好能修改文件权限,使root作为owner和chmod 700

vi /etc/modules.conf

alias char-major-108 ppp_generic
alias /dev/ppp ppp_generic
alias tty-ldisc-3 ppp_async
alias tty-ldisc-14 ppp_synctty
alias ppp-compress-18 ppp_mppe_mppc
alias ppp-compress-21 bsd_comp
alias ppp-compress-24 ppp_deflate
alias ppp-compress-26 ppp_deflate

重新启动
# reboot

在我这里 alias ppp-compress-18 ppp_mppe_mppc 好像没用,只好手动加载

# modprobe ppp_mppe_mppc

确认内核支持
strings `which pppd`|grep -i mppe|wc --lines
30
###大于等于30就行#####
[strings `which pppd`|grep -i mppc|wc --lines
7
#### 不为 0 #####
dmesg | grep MPPE
MPPE/MPPC encryption/compression module registered

启动pptpd

# /usr/local/sbin/pptpd
Mar 17 23:07:32 localhost pptpd[4471]: MGR: Manager process started
Mar 17 23:07:32 localhost pptpd[4471]: MGR: Maximum of 10 connections available

设置客户端连接,"安全"里面选择自定义,如图所示,这里取决于你在option.pptpd里面的设置


Mar 17 23:09:59 localhost pptpd[4473]: CTRL: Client 192.168.1.136 control connection started
Mar 17 23:09:59 localhost pptpd[4473]: CTRL: Starting call (launching pppd, opening GRE)
Mar 17 23:09:59 localhost pppd[4474]: pppd 2.4.3 started by root, uid 0
Mar 17 23:09:59 localhost pppd[4474]: Using interface ppp0
Mar 17 23:09:59 localhost pppd[4474]: Connect: ppp0 <--> /dev/pts/1
Mar 17 23:10:02 localhost pptpd[4473]: CTRL: Ignored a SET LINK INFO packet with real ACCMs!
Mar 17 23:10:02 localhost pppd[4474]: MPPC/MPPE 128-bit stateless compression enabled
Mar 17 23:10:04 localhost pppd[4474]: found interface eth0 for proxy arp
Mar 17 23:10:04 localhost pppd[4474]: local IP address 192.168.1.3
Mar 17 23:10:04 localhost pppd[4474]: remote IP address 192.168.1.230

OK,成功

Leave a comment

Recent Entries

  • Lync Server 2010 发布架构报错

    昨天想试试在现有的 OCS 2007 R2 的基础上部署 Lync Server 2010 试试看,装好 Topology Builder 之后,新建了一个拓扑,然后把该填的都填了,发布的时候老是报SQL错,很是郁闷,后来终于在log中找到了错误原因:  Script result: ERROR_VALIDATE_BAD_SQL_VERSION Error: Script failed (code "ERROR_VALIDATE_BAD_SQL_VERSION") when installing "CentralMgmtStore" on "LyncServer01.mail2any.local"....

  • 使用 URL Rewrite 重定向 Http 请求至 Https

    公司部署了个新的 IIS 站点,需要强制在 Https 下面访问,但是又不希望关掉80端口的 Http 请求,这样对用户体验来讲不好,最好是能强制所有的 Http 请求都会被重定向到 Https 上面去,显然, IIS 自带的 "HTTP Redirect" 已经不能满足这个需求,我们这里使用 IIS 7.0 下面的重定向扩展 URL Rewrite Module 来做。1. http://www.iis.net/download/URLRewrite 到这里下载,有分...

  • How to remember your OC and Outlook password

    How to make your computer remember your Microsoft Communicator 2007 R2 and Outlook 2007 password (如何让你的电脑在非域环境中记住 OC 2007 R2 和 Outlook 的密码)我们知道,在域的环境中,使用 OC 和 Outlook...

  • 微软 CRM 2011 Beta 快速安装图解

    微软在9月17日在网站上放出了 CRM 2011 (也就是CRM5.0)的 beta 版本,我就先来个简单的快读安装图解,一睹为快,下个月会写点新版 CRM 的使用感受。 下载: Microsoft Dynamics CRM 2011 Beta Microsoft Dynamics CRM 2011 Software Development Kit (SDK)Microsoft Dynamics CRM 2011...

  • 升级到 Exchange 2010 SP1 后出现的2个小问题

    今天有空把所有的 Exchange 服务器从 2010 RTM 升级到了 2010 SP1 了, 升级完了后发现了2个小问题: OWA打开正常,但是点到 ECP 的时候报 403 访问拒绝错误 某台 Exchange 打开 EMS 时报错如下: [server.mydomain.local] Connecting to remote server failed...

Close