ubuntu下搭建pptp服务器

1. 安装软件包
在Debian或者Ubuntu的 apt-get 安装包管理下,使用如下命令

sudo apt-get   install pptpd


2. 配置
修改配置文件/etc/sysctl.conf中的相应内容如下,打开ipv4转发功能


net.ipv4.ip_forward = 1
 
执行sysctl -p,使其马上生效。

3. 编辑配置文件 /etc/ppp/pptpd-options,修改里面的ms-dns 这个项为 8.8.8.8 。也就是Google的DNS服务器。


4. 配置文件 /etc/pptpd.conf .修改成如下:

option /etc/ppp/pptpd-options

localip 192.168.0.1

remoteip 192.168.0.2-150

5. 修改 /etc/ppp/chap-secrets 文件,这里面存放着 VPN 的用户名和密码,根据你的实际情况填写即可。如文件中注释所示,第一列是用户名,第二列是服务器名(默认写 pptpd 即可,如果在 pptpd-options 文件中更改过的话,注意这里保持一致),第三列是密码,第四列是 IP 限制(不做限制写 * 即可)。
eg. ${USERNAME} pptpd ${PASSWD} *


6. 有些时候,经过这样设置,客户端机器就可以上网了(在虚拟机上这样操作后就可以了)。但在实验室的服务器上这样操作后仍然无法访问网络,这样我们就需要建立一个 NAT。这里我们使用强大的 iptables 来建立 NAT。首先,先安装 iptables:


sudo apt-get intall iptables
装好后,我们向 nat 表中加入一条规则:

[XEN] iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE

####################################################################################################################################

[OpenVZ, 12.34.56.78为你的VPS的公网IP地址] iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 12.34.56.78

同时,Debian 下需要将iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT –to-source 12.34.56.78 这句话写入一个脚本文件/etc/pptpdfirewall.sh,chmod 755 /etc/pptpdfirewall.sh,然后

在/etc/init.d/rc.local最后一行写入sh /etc/pptpdfirewall.sh

####################################################################################################################################

这样操作后,客户端机器应该就可以上网了。


7. 但是,只是这样,iptables 的规则会在下次重启时被清除,所以我们还需要把它保存下来,方法是使用 iptables-save 命令:

sudo iptables-save > /etc/iptables-rules

然后修改 /etc/network/interfaces 文件,找到 eth0 那一节,在对 eth0 的设置最末尾加上下面这句:

pre-up iptables-restore < /etc/iptables-rules

这样当网卡 eth0 被加载的时候就会自动载入我们预先用 iptables-save 保存下的配置。


你可能感兴趣的:(linux,system,management)