Ubuntu16.04 搭建VPN服务

来源:互联网 发布:全国淘宝店有多少家 编辑:程序博客网 时间:2024/05/29 03:23

original url:

http://www.jianshu.com/p/8ac024216888

http://jingyan.baidu.com/article/ce09321b23cf7c2bff858fb8.html

http://www.guoziweb.com/archive/265.html

步骤:
1.第一步需要安装PPTP,以用来提供VPN服务.
sudo apt-get install pptpd
如果有问题的话比如提示找不到之类的,apt-get update 一下应该就可以了,然后再来一次就会自动完成安装。

2.装好了之后我们需要进行配置一下以让它可以使用.
sudo vi /etc/pptpd.conf

取消掉以下 2 行的注释并修改为自己设置的vpn网段:
localip 219.224.167.201
remoteip 192.168.150.234-238
分别是通过VPN连接后主机和客户端所使用的IP,可以自行修改。注意这个IP在下面还会用的到。

3.然后我们需要分配账号给自己使用.
sudo vi /etc/ppp/chap-secrets
这个是用户列表文件,在里面添加账户按如下格式
“username” pptpd "password" *

username为你的用户名,password为你的密码,用引号引起,最后的*号表示允许在任意IP连接到服务

4.至此服务弄好了,如果你sudo service pptpd restart一下,就应该已经能连接到该VPN了,但是连接了之后会发现还访问不了外网,如果是需要连接内网的vpn,可以不需要这一步操作。需要让他能访问外网。首先,
sudo vi /etc/ppp/pptpd-options
找到ms-dns,取消掉注释,改成你喜欢的DNS比如8.8.8.8,8.8.4.4

5.然后我们要开启内核IP转发
sudo vi /etc/sysctl.conf

取消掉 net.ipv4.ip_forward=1 这一行的注释,然后执行
sudo sysctl -p
使修改后的文件配置立即生效。

6.然后我们需要安装iptables,用来实现请求的NAT转发
sudo apt-get install iptables

然后开启NAT转发.
sudo iptables -F

sudo iptables -t nat -A POSTROUTING -s 192.168.150.0/24 -o eth0 -j MASQUERADE

sudo iptables -t nat -A POSTROUTING -s 192.168.150.0/24 -o br0 -j MASQUERADE  (如果有虚拟网桥br0的话)

192.168.150.0/24是你在上面设置的IP段,让这个段转发,注意eth0是你连接外网的那块网卡,不一定是0也有可能是1或者看你的机器哪块网卡连的外网了。这样就以NAT的方式请求外网的东西了。不知道你的机器哪块网卡连的外网的话ifconfig一下看看哪个网卡是外网IP就知道了。

7.最后,我们需要重启服务,让配置生效 .
sudo service pptpd restart

现在你已经可以连接到VPN获取内网150网段的地址了。

参照:https://my.oschina.net/isnail/blog/363151


查看有没有人连接该vpn:

# netstat -anpt|grep pptpd

或者

# ifconfig    也能看出有ppp0/ppp1等。


======================================================

客户端怎么连接:

一, ubuntu 16.04:

1、首先安装PPTP-VPN拨号客户端

1
sudo apt-get install pptp-linux binutils

2、创建拨号连接

1
sudo pptpsetup --create testvpn --server 219.224.167.172 --username user --password pass --encrypt --start

各参数说明:

      –create           后的是创建的连接名称,可以为任意名称;
      –server           后接的是vpn服务器的IP;
      –username     是用户名
      –password      是密码,在这也可以没这个参数,命令稍后会自动询问。这样可以保证账号安全
      –encrypt         是表示需要加密,不必指定加密方式,命令会读取配置文件中的加密方式
      –start              是表示创建连接完后马上连接,如果你不想连,就不写 

3、连接或断开VPN

1
2
pon testvpn    #<--  VPN的&ldquo;连接名称"
poff                   #<-- 断开VPN连接

当连接成功后输入ifconfig命令会出现如下内容:

ppp0      Link encap:点对点协议  

          inet 地址:172.16.36.2  点对点:172.16.36.1  掩码:255.255.255.255

          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1496  跃点数:1

          接收数据包:7 错误:0 丢弃:0 过载:0 帧数:0

          发送数据包:7 错误:0 丢弃:0 过载:0 载波:0

          碰撞:0 发送队列长度:3

          接收字节:70 (70.0 B)  发送字节:76 (76.0 B)

4、添加网关路由,让流量走VPN

从第3步可以看出,新增虚拟接口为ppp0,VPN的网关为172.16.36.1

在文件/etc/ppp/ip-up加入该网关。(此文件在VPN拨号成功后会默认调用该脚本,所以加在此文件中不需要手动添加)

route add default gw 172.16.36.1

也可以在终端手动敲入上面命令:

1
sudo route add default gw 172.16.36.1

5、删除原有默认网关路由

通过sudo route命令可以查看本机中已经添加的路由。

找到对应的路由,假设我这里还有一条路由是192.168.0.1使用以下命令进行删除之:

1
sudo route del default gw 192.168.0.1

6、试着打开facebook看看

facebook

OK了


--------------------------------------------

二,win7系统如何创建pptp的vpn连接:


方法/步骤

  1. 1

    右键点击网络连接图标打开“网络和共享中心”。

    win7系统如何创建PPTP的VPN拨号连接
  2. 2

    点击设置新的连接或网络进行VPN拨号方式的创建!

    win7系统如何创建PPTP的VPN拨号连接
  3. 3

    在弹出的设置连接或网络的选项卡里选择“连接到工作区”。

    win7系统如何创建PPTP的VPN拨号连接
  4. 4

    选择“使用我的internet连接VPN”双击后进入下一步。

    win7系统如何创建PPTP的VPN拨号连接
  5. 5

    填写VPN服务器的IP地址信息后输入VPN服务器名称,完成后点击下一步。

    win7系统如何创建PPTP的VPN拨号连接
  6. 6

    输入VPN服务器管理员分配的用户名及密码后点击记住密码已防止重新输入用户名和密码。完成以上所有操作后点击连接。

    win7系统如何创建PPTP的VPN拨号连接
  7. 7

    默认情况下系统会对VPN的服务一个一个的进行尝试直到连接成功为止。

    win7系统如何创建PPTP的VPN拨号连接
    win7系统如何创建PPTP的VPN拨号连接
    END

快速进行PPTP连接

  1. 回到网络和共享中心,点击更改适配器设置。

    win7系统如何创建PPTP的VPN拨号连接
  2. 右键点击我们刚才建立好的VPN连接图标,先建立一个快捷方式放置到桌面上方便我们进行VPN拨号连接,然后点击属性。

    win7系统如何创建PPTP的VPN拨号连接
  3. 在安全选项卡中VPN类型的下拉菜单下选择“点对点隧道协议PPTP”,下放的数据加密类型选择“可选加密(不加密也进行连接)”后点击确定。

    win7系统如何创建PPTP的VPN拨号连接
    win7系统如何创建PPTP的VPN拨号连接

0 0