zoukankan      html  css  js  c++  java
  • 安装 pptpd 服务

    原文链接http://wiki.ubuntu.org.cn/index.php?title=Vps&variant=zh-cn#.E5.AE.89.E8.A3.85_PPTP_VPN

    安装 pptpd 服务

    执行如下命令安装,遇到提示输入 Y/n 时,输入 Y 回车即可:

     apt-get install pptpd
    

    配置 pptpd

    为了避免和本地网络冲突,我们创建VPN的IP范围为 192.168.10.21-192.168.10.100

    执行如下命令:

    echo 'localip 192.168.10.1-20' >> /etc/pptpd.conf
    echo 'remoteip 192.168.10.21-100' >> /etc/pptpd.conf
    echo 'ms-dns 8.8.8.8' >> /etc/ppp/pptpd-options
    echo 'ms-dns 8.8.4.4' >> /etc/ppp/pptpd-options
    echo 'nopcomp' >> /etc/ppp/pptpd-options
    echo 'noaccomp' >> /etc/ppp/pptpd-options
    

    继续增加 pptp 用户帐号:

    格式为 [UserName] pptpd [Password] * ,我们增加一个 guest 密码 为 123456 的用户如下:

    echo 'guest pptpd 123456 *' >> /etc/ppp/chap-secrets
    

    重启下pptpd:

    /etc/init.d/pptpd restart


    8.开启ip转发

    #iptables -t nat -A POSTROUTING -s 192.168.13.0/24 -o eth0 -j MASQUERADE

    完成。


    注意:如果需要在 iphone 上使用,请在 iphone 的 PPTP 设置页将 "加密级别" 设置为 "最高" ,否则将无法连接上。

    建立连接之后,您会发现除了可以访问服务器的资源,其余内外和互联网的内容均无法访问。如果需要访问这些内容的话,我们还需要进一步设置:

    首先,开启 ipv4 forward。方法是,修改 /etc/sysctl.conf,找到类似下面的行并取消它们的注释:

    net.ipv4.ip_forward=1然后使新配置生效:

    sudo sysctl -p有些时候,经过这样设置,客户端机器就可以上网了(我在虚拟机上这样操作后就可以了)。但我在实验室的服务器上这样操作后仍然无法访问网络,这样我们就需要建立一个 NAT。这里我们使用强大的 iptables 来建立 NAT。首先,先安装 iptables:

    sudo apt-get intall iptables装好后,我们向 nat 表中加入一条规则:

    #iptables -t nat -A POSTROUTING -s 192.168.13.0/24 -o eth0 -j MASQUERADE

    这样操作后,客户端机器应该就可以上网了。

    但是,只是这样,iptables 的规则会在下次重启时被清除,所以我们还需要把它保存下来,方法是使用 iptables-save 命令:

    sudo iptables-save > /etc/iptables-rules然后修改 /etc/network/interfaces 文件,找到 eth0 那一节,在对 eth0 的设置最末尾加上下面这句:

    pre-up iptables-restore < /etc/iptables-rules这样当网卡 eth0 被加载的时候就会自动载入我们预先用 iptables-save 保存下的配置。

    到此,一个 VPN Server/Gateway 基本就算架设完毕。当然,也许你按照我的方法做了,还是无法成功,那么下面总结一些我碰到的问题和解决方案:

  • 相关阅读:
    Java后端面试题大汇总,冲刺金三银四
    面试官:小伙子,Mybatis的本质和原理说一下
    面试官问:大量的 TIME_WAIT 状态 TCP 连接,对业务有什么影响?怎么处理?
    便捷搭建 Zookeeper 服务器的方法,好用,收藏~
    10 个冷门但又非常实用的 Docker 使用技巧
    mitmproxy 抓包工具(1)
    基于alpine创建Scrapy镜像
    强大的输入框-应用快速启动uTools
    Interceptor、Filter、Servlet的区别
    利用三层判断sql数据库中编码是否已经存在(个人拙作,不喜勿喷)
  • 原文地址:https://www.cnblogs.com/wangkangluo1/p/2766375.html
Copyright © 2011-2022 走看看