Ubuntu下V*N Server搭建笔记

jopen 8年前

由于android sdk下载纠结了很久,各种镜像不给力,不得不使用V*N来更新,V*N Server前几年做过,记得搞了很久,所以一直都逃避去干这个事情,今天属于没办法了。
但是今天体验之后发现其实。。比想象的简单很多,在等待SDK更新的时间,趁热写下笔记

系统环境

操作系统:Ubuntu 14.04.1 LTS
IDC:阿里云 ECS 香港

1. 安装所需软件

sudo apt-get install pptpd iptables

2. 配置ip地址

V*N是虚拟专用网络,需要两边都有虚拟的IP地址,首先要配置下服务器的ip,与客户端的ip地址池

sudo vim /etc/pptpd.conf

打开之后注释掉以下两行,在文件的最下方

# (Recommended)  localip 192.168.0.1  remoteip 192.168.0.234-238,192.168.0.245

当然localip也可以设置多个,但是在个人服务链接数较少的情况下中应该应用不到。

3. 配置V*N PPTP的客户端登录账号

sudo vim /etc/ppp/chap-secrets

每个账号一行在最下面加入

# Secrets for authentication using CHAP  # client        server  secret                  IP addresses  meng    pptpd   "meng123"       *

这样我就添加了一个meng的登录账号,密码meng123
最后一个*号是说不限定客户端的登录IP地址

4. 配置客户端连接后的DNS服务

sudo vim  /etc/ppp/pptpd-options

取消ms-dns的注释并填写DNS服务器地址,例如8.8.8.8
ms-dns可以填写多个,换行即可

5.开启ip转发

sudo vim /etc/sysctl.conf

找到net.ipv4.ip_forward=1并取消注释

执行以下命令

sysctl -p

保存内核参数并生效

6. 配置NAT转发

查询出服务器的公网网卡地址,阿里云服务器一般都是eth1

sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE

以下是可选配置,如果服务器根本不需要重启,那下面的就不用执行
。。。我记得之前好像可以直接service iptables save搞定的,也许是ubuntu没有这个脚本吧。。

如果系统重启,iptables会失效,所以还是需要通过iptables-save iptables-restore来保存
iptables-save和iptables-restore就是用来保存和恢复设置的.
先将防火墙规则保存到/etc/iptables.up.rules文件中:

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

然后修改脚本/etc/network/interfaces,在末尾添加一行,在网络启动时应用防火墙规则:

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

7. 重新载入PPTP服务

sudo service pptpd restart

8. 客户端配置

Windows
QQ20151231-2

QQ20151231-1

Mac OSX
QQ20151231-0

来自: http://my.oschina.net/mengshuai/blog/595221