Home > 系统管理 > [Linux]Ubuntu配置VPN代理服务器

[Linux]Ubuntu配置VPN代理服务器

之前提到过在CentOS下配置VPN服务器,今天顺便提一下在ubuntu下如何配置VPN代理服务,在Ubuntu下配置VPN相比CentOS基本相同,这里我用一台DigitalOcean的VPS作为测试服务器,选择它的原因很简单,因为VPS可完全控制PPP设备,可以不需要发工单要求客服开通。操作系统是Ubuntu Server12.04.3。所有操作都在sudo su后执行。

1.确认PPP设备或TUN设备是否安装(DigitalOcean VPS的跳过)

1
2
3
4
5
ls /dev/ppp
ls /dev/net/tun
# 或
cat /dev/ppp
cat /dev/net/tun

如果提示“No such file or directory”或“No such device or address”则表示未安装。发工单要求开通即可

2.安装pptpd

1
apt-get install pptpd

3.安装成功后修改/etc/pptd.conf文件,配置VPN 的IP地址 写入

1
2
3
4
5
localip XXX.XXX.XXX.XXX
remoteip XXX.XXX.XXX.XXX-XXX
#参考配置
#localip 10.0.0.1
#remoteip 10.0.0.100-200

localip 为本地IP,即本机IP
remoteip 为远程主机会被分配的IP,通常设置为连续ip段

4.修改/etc/ppp/options.pptpd文件,完成VPS服务器DNS修改

1
2
ms-dns 8.8.8.8
ms-dns 8.8.4.4

5.编辑/etc/ppp/chap-secrets,配置VPN连接的用户
格式为

1
username pptpd password *

username表示用户名
pptpd表示服务名,一般默认
password表示密码
*星号表示所有IP都可以接入

6.打开IP转发,修改/etc/sysctl.conf,打开ipv4转发
打开文件后找到以下内容,并修改。没有请添加。

1
2
3
4
5
#打开IP转发
net.ipv4.ip_forward=1
 
#打开SYN cookies功能,避免SYN洪水攻击,多用户连接时推荐打开
net.ipv4.tcp_syncookies=0

生效对/etc/sysctl.conf的修改(可选)

1
sysctl -p

7.打开防火墙

1
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE && iptables-save

8.启动pptp vpn服务

1
service pptpd start

DigitalOcean提供的教程:
https://www.digitalocean.com/community/articles/how-to-setup-your-own-vpn-with-pptp

Categories: 系统管理 Tags: ,
  1. No comments yet.
  1. No trackbacks yet.