导航
导航
文章目录
  1. 一、安装 pptpd
  2. 二、编辑 pptpd.conf
  3. 三、编辑 pptpd-options
  4. 四、添加 VPN 用户
  5. 五、配置iptables规则
  6. 六、重启pptpd服务

Debian/Ubuntu PPTP VPN 安装笔记

VPN 也叫虚拟专用网,常见的 VPN 类型有:点对点隧道协议(PPTP)、使用 IPsec 的第2层隧道协议(L2TP/IPsec)、安全套接字隧道协议(SSL VPN)。其中 PPTP 是安装使用最为简便的一种。

在开始前建议你先阅读以下3篇文章,特别是有关路由方面的知识:
详解IPv4地址子网划分及子网掩码计算方法理解Windws中的路由表

一、安装 pptpd

不建议编译安装,没有多大意义,得不偿失。

apt-get -y update
apt-get -y install pptpd

二、编辑 pptpd.conf

localip 是 VPN 服务器 IP,可任意指定。
remoteip 是可分配给 vpn 客户端 IP。
为避免冲突,localip、remoteip 最好不要与服务器当前内网或经常拨入的客户端内网地址在同一网段。

cat >>/etc/pptpd.conf<<EOF
localip 10.10.10.1
remoteip 10.10.10.2-254
EOF

三、编辑 pptpd-options

cp /etc/ppp/pptpd-options /etc/ppp/pptpd-options.old
cat >/etc/ppp/pptpd-options<<EOF
name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
debug
dump
lock
nobsdcomp
novj
novjccomp
logfile /var/log/pptpd.log
EOF

name pptpd(pptpd服务名,可以随便填写。)
refuse-pap(拒绝pap身份认证模式。)
refuse-chap(拒绝chap身份认证模式。)
refuse-mschap(拒绝mschap身份认证模式。)
require-mschap-v2(在端点进行连接握手时需要使用微软的 mschap-v2 进行自身验证。)
require-mppe-128(MPPE 模块使用 128 位加密。)
ms-dns 8.8.8.8 (ppp 为 Windows 客户端提供 DNS 服务器 IP 地址。)
proxyarp (建立 ARP 代理键值。)
nodefaultroute(不替换默认路由)
debug(开启调试模式,相关信息记录在 /var/logs/message 中。)
lock(锁定客户端 PTY 设备文件。)
nobsdcomp (禁用 BSD 压缩模式。)

四、添加 VPN 用户

chap-secrets 文件为4段,分别是:用户名、服务器名称、密码、分配给客户端的IP。
服务器名可以是pptpd或今后的l2tpd,号代表全部。
密码以明文填写,不需进行加密。
最后的
号代表从remoteip指定的IP段随机分配

cat >>/etc/ppp/chap-secrets<<EOF
test * test *
EOF

五、配置iptables规则

ipv4转发,否则连接VPN后,只能访问服务器资源,而不能访问这台服务器以外的资源。

sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf
sysctl -p

备份当前iptables规则。

iptables-save > /etc/iptables.down.rules

设置 iptables NAT 转发

iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -o eth0 -j MASQUERADE

设置 MTU (选做)

iptables -I FORWARD -s 10.0.0.0/8 -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1300

保存新的 iptables 的规则,以便重启后继续有效。

iptables-save > /etc/iptables.up.rules
cat >>/etc/ppp/pptpd-options<<EOF
pre-up iptables-restore < /etc/iptables.up.rules
post-down iptables-restore < /etc/iptables.down.rules
EOF

六、重启pptpd服务

/etc/init.d/pptpd restart
netstat -lntp

补充:PPTPD 自动安装脚本

wget -c http://small-script.googlecode.com/files/debian-pptpd.tar.gz
tar -zxf debian-pptpd.tar.gz
./pptpd.sh

最后更新:2011.08.16

支持一下
扫一扫,支持一下