Ubuntu14.04下搭建VPN服务器

VPN一般有比较著名的 PPTP, L2TP/IPSec 和 OpenVPN三种方式,后两种也比较安全,但是配置起来要麻烦一些,而且有的对于手机还要安装特定的客户端才能使用。
PPTP搭建VPN服务端配置简单快捷,本文将记录在Ubuntu下搭建VPN

1. 更新系统并安装PPTP    
root@cloud:~# apt-get update
root@cloud:~# apt-get install pptpd
2. 安装完成后配置VPN的本机ip及客户端ip池
root@cloud:~# vim /etc/pptpd.conf
#去掉以下两行的注释,将localip参数的值改为VPN外网的IP地址,
localip 118.193.157.180
remoteip 192.168.0.234-238,192.168.0.245
# romteeip 是分配给接入者的IP池,当有用户连接到VPN时,自动分配给用户地址池中的IP
3. 为用户配置账户
root@cloud:~# vim /etc/ppp/chap-secrets
#打开该文件后,输入账号信息
# Secrets for authentication using CHAP
# client server secret IP addresses
test pptpd "123" *
#账号信息的格式:用户名 协议 密码 IP地址(*表示允许任意的IP连接到VPN)

4. 配置DNS服务器地址
root@cloud:~# vim /etc/ppp/pptpd-options
#找到ms-dns,将dns修改为如下,也可以修改为其他的DNS服务器地址
ms-dns 8.8.8.8
ms-dns 8.8.4.4
5. 开启内核IP转发
root@cloud:~# vim /etc/sysctl.conf
#去掉net.ipv4.ip_forward=1 这一行的注释,之后执行如下命令使配置生效
root@cloud:~# sysctl -p #一定要执行该命令,否则上不了网
6. 安装iptables,实现请求的NAT路由转发
root@cloud:~# apt-get install iptables
root@cloud:~# iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
# -s 192.168.0.0/24 即上述remoteip地址池的网段
# -o eth0 即服务器访问外网的网卡名称,可通过ifconfig查看
7. 重启pptpd服务,启动后VPN服务搭建完成
root@cloud:~# service pptpd restart
8. 完成VPN服务器的搭建后,在Windows系统中用VPN连接工具联系VPN

9.连接成功后,可通过浏览器访问谷歌首页

注:连接成功后查看本地网络信息时,将会有一个虚拟专用网络,该网络的IP地址是从remoteip中分配来的,此外该网络并不需要手动配置就能访问网络
接下来,我们再查看一下Ubuntu的网络信息时会发现:用户连接到VPN时,会额外增加一个ppp0的虚拟网卡,断开连接时该网卡也随即消失

root@cloud:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:15:5d:a2:b2:50
inet addr:118.193.157.180 Bcast:118.193.157.255 Mask:255.255.255.0
inet6 addr: fe80::215:5dff:fea2:b250/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1156746 errors:0 dropped:0 overruns:0 frame:0
TX packets:516887 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:353203209 (353.2 MB) TX bytes:264813906 (264.8 MB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

ppp0 Link encap:Point-to-Point Protocol
inet addr:45.119.126.186 P-t-P:192.168.0.234 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1396 Metric:1
RX packets:5278 errors:0 dropped:0 overruns:0 frame:0
TX packets:4651 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:1006696 (1.0 MB) TX bytes:3030065 (3.0 MB)
root@cloud:~#
好啦,现在可以任意访问啦!
  • 发布时间:2019-04-05     

作者简介

任性自我,喜欢研究一些新的技术