用pptp client连接远程VPN服务器 远程维护能有效减轻系统管理员的工作强度,并能提高管理效率。所以公司一般都会设置有VPN服务器以支持远程安全登录。现在的VPN服务器一般都同时支持 pptp和IPSec两种协议,在Debian中我们可通过pptp client连接远程VPN服务器。pptp client是一种开源的pptp客户端,位于rceforge.net/">http://pptpclient.sourceforge.net/,网站上有pptp client的详细介绍。要使用pptp client,我们可手工安装配置,也可通过图形化的配置工具来进行安装和配置。安装方法如下: * 用以下命令安装pptp client软件 # apt-get install pptp-linux * 成功安装pptp软件后,就可进行配置了。有两种方法进行配置,一种是手动配置,在我写的“GNU/Linux问题集”里有详细介绍。另一种是通过图形界面配置工具pptpconfig进行配置,它是一个PHP脚本。安装方法如下: 1.把以下内容添加到你Debian系统的资源列表中,它位于/etc/apt/sources.list. # James Cameron's PPTP GUI packaging deb http://quozl.netrek.org/pptp/pptpconfig ./ 2.更新系统软件包信息 # apt-get update 3.安装pptpconfig软件包 # apt-get install pptpconfig 安装时Debian会把pptpconfig所依赖的其软件包都一起安装。 * 配置连接参数o server标签依次填上本地连接名,服务器名或IP,域(可选),用户名和密码。 o Routing 标签用来设置路由信息。可用"xxx.xxx.xxx.xxx/xx"的形式增加新的路由。我增加了一条到192.168.3.0/24的路由,以访问该网段。routing style选All to Tunnel,可改变本机的缺省路由,使本机的所有的网络流量都通过该通道。 o DNS 标签用来设置建立pptp连接后如何进行名称解析。不启用自动配置,将使用手工输入的DNS服务器代替/etc/resolv.conf里的名称服务器进行名称解析。启用自动配置,将会用拔号自动获得的DNS服务器替代/etc/resolv.conf里的DNS服务器,两种方式/etc/resolv文件都会被pptpconfig自动备份。连接断开后,pptpconfig会自动恢复旧有/etc/resovl.conf文件。 o Encryption标签用于设置加密信息。 o Miscellaneous标签可配置一些调试信息和连接状态。 pptpconfig 是GTK+程序,需在X window环境下才能运行。但有时我们会在字符终端模式下启用SSH连接,以进行远程维护。这时我们要用到pon、poff程序。pon用于VPN拔号,poff用于断开VPN连接。要正常使用这两个程序,前提是要按上面的配置方法成功配置了一个VPN连接。假设我们已建立了一个名为remote的 VPN连接,则可用以下命令连接VPN服务器。 debian:~# pon remote # 建立一个VPN连接debian:~# plog # 查看VPN连接状态信息#如要访问另一网段192.168.3.0,需为这个VPN通道添加一条到192.168.3.0网段的路由信息debian:~# route add -net 192.168.3.0 netmask 255.255.255.0 dev ppp1 debian:~# poff remote # 断开VPN连接 remote这个VPN连接的信息主要存放在两个文件中,分别是/etc/ppp/chap-secrets和/etc/ppp/peers/remote.如果没有pptpconfig这个图形化配置工具,我们也可参考这两个文件的配置格式,手工配置。 * /etc/ppp/chap-secrets文件示例: # +++ pptpconfig added for tunnel remote username remote password * # —— pptpconfig added for tunnel remote * /etc/ppp/peers/remote文件示例: # tunnel remote, written by pptpconfig $Revision: 1.2 $ # name of tunnel, used to select lines in secrets files remotename remote # name of tunnel, used to name /var/run pid file linkname remote # name of tunnel, passed to ip-up scripts ipparam remote # data stream for pppd to use pty "pptp 211.111.60.18 ——nolaunchpppd " # domain and username, used to select lines in secrets files name username persist # do not require the server to authenticate to our client noauth # end of tunnel file 使用时需用真实的username和password代替配置文件中这两项内容。