红联Linux门户
Linux帮助

Gentoo如何配置VPN上网

发布时间:2007-08-25 00:28:40来源:红联作者:skyAND
虚拟专用网络(Virtual Private Network,VPN)是专用网络的延伸,它包含了类似Internet 的共享或公共网络链接。通过VPN可以以模拟点对点专用链接的方式通过共享或公共网络在两台计算机之间发送数据。如果说得再通俗一点,VPN实际上是"线 路中的线路",类型于城市大道上的"公交专用线",所不同的是,由VPN组成的"线路"并不是物理存在的,而是通过技术手段模拟出来,即是"虚拟"的。

不过,这种虚拟的专用网络技术却可以在一条公用线路中为两台计算机建立一个逻辑上的专用"通道",它具有良好的保密和不受干扰性,使双方能进行自由 而安全的点对点连接,因此被网络管理员们非常广泛地关注着。现在中小企业通过ADSL宽带网络连接互联网并建立自己的局域网比较常见,而VPN的使用范围 也已经越来越广了。

笔者就认识不少把自己家的电脑和单位的局域网通过VPN连接起来的朋友。笔者通过调查发现现在通常有两种方法实现局域网的VPN连接:一种是在局域网中的 客户机上可以进行单个VPN连接,通过计算机的VPN功能或客户端软件建立PPTP或IPSEC的VPN连接;另一种是在ADSL路由器上建立B2B (Branch to Branch,网对网的连接)的VPN连接。

这两种方法各有利弊,如果实现单个计算机的VPN连接,好处是局域网中的计算机建立VPN连接的时候不会影响其它计算机连接公网,缺点是同时只能有一台计算机建立连接,适合于企业用户,尤其是当企业计算机比较多的时候。

而建立B2B的VPN连接以后,局域网中的计算机都连接VPN了,所有的连接都是建立在VPN之上的,影响了连接INTERNET的速度,因为VPN连接 以后建立隧道,数据是加密的,所有的连接都要通过VPN服务器来转接,适合于经常需要连接外网以及局域网中的计算机比较少的情况。

下面是在Gentoo下操作的过程,注意要以 root 的身份运行。

1、编译内核,加入 ppp 的支持,并重起

2、安装 ppp 和 pppclient 软件包

emerge pppclient

3、编辑用户认证的配置文件 /etc/ppp/chap-secrets

# Client Server Secret IP

"davies" "toy" "my_pass" *


该文件中每一行为一条认证信息,有4个字段:用户名、服务器名、密码和所用 IP。用户名和密码不用多讲,就是登陆时要用的那个,服务器名可以随意取,只要与其它配置文件保持一致即可。如果是动态分配的 IP,就写 *.

4、建立 ppp 连接用的配置文件,比如放在 /etc/ppp/peer 的下面,文件名就是该连接的名字,比如

touch /etc/ppp/peer/vpn


编辑该文件,输入如下内容:

# conf for vpn , created by Davies

pty "pptp 166.111.63.104 --nolaunchpppd "

name "davies"

remotename "toy"

noauth


第一行为注释,以 # 开头。加上它有一点好处,vim 可以根据它将该文件识别为配置文件,并进行语法加亮。

第二行为设定一个脚本,其中制定开了 VPN 服务的 Linux 服务器的 ip 地址或者域名。

接下来的两行指定用户认证信息,要与上面那个文件保持一致,认证的时候会根据这两项去 chap-secrets 文件找相应的行。

第五行的 "noauth" 指定该 ppp 连接本身不需要认证。

以上就是打开 ppp 连接所需要的最小配置了 :-)

5、打开 ppp 连接,用 pon 命令,参数为 ppp 连接的名字,即 /etc/ppp/peer 目录下文件的名字。如下:

pon vpn


同样,用 poff 可以关闭该连接。

poff vpn

这时用 ifconfig 就可以看到多了一个 ppp0 的 Interface:

ppp0 Link encap:Point-to-Point Protocol
inet addr:10.0.0.6 P-t-P:10.0.0.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:6 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:73 (73.0 b) TX bytes:87 (87.0 b)

它的 ip 10.0.0.6 是自动分配的。

6、最后,再配上路由就万事 OK 了 ;)

route add -net 10.0.0.0/24 dev ppp0

将这一句加入到 /etc/ppp/ip-on.local 中,就可以在每次打开 ppp 连接的时候自动加上路由了。同样,需要在/etc/ppp/ip-down.local 文件中加入删除路有的语句。
文章评论

共有 1 条评论

  1. ljp50598313 于 2009-09-28 14:14:04发表:

    那你有没有在REDHAT下用ADSL动态IP地址做网络对网络VPN的方案嘛,共享一下嘛