vpn搭建

买了个VPN,白天在公司还好,虽然不怎么用,不过晚上那叫一个坑爹啊,根本连不上,所以使用自己动手丰衣足食的原则,找了一些资料,自己搭建个vpn,自己一个人用,速度还可以啦!

环境:centos 6.5

  1. 连接到server
  2. 安装pptpd,这是个VPN服务器端软件
    sudo apt-get install pptpd
  3. 修改文件 /etc/pptpd.conf
    sudo vi /etc/pptpd.conf
    找到# TAG: localip一行,在后面添加以下2行:
    localip 192.168.0.1
    remoteip 192.168.0.234-238,192.168.0.245
  4. 修改文件 /etc/ppp/options.pptpd
    sudo vi /etc/ppp/options.pptpd

找到 #ms-dns这行,去掉前面的#号,修改成google提供的DNS server或其他DNS:
ms-dns 8.8.8.8
ms-dns 8.8.4.4

  1. 修改文件 /etc/ppp/chap-secrets,按一行四列添加账号、服务器名、密码和IP限制。服务器名(默认 写pptpd 即可,务必与 options.pptpd 文件的name一行一样)。如创建一个名为user,密码为userpasswd,不限制登录IP的VPN账号:
    user pptpd userpasswd *
  2. 修改文件 /etc/sysctl.conf,去掉这一行 #net.ipv4.ip_forward=1 的#号,开启ipv4 forward,然后运行命令:
    sudo sysctl –p
    运行后会显示 net.ipv4.ip_forward = 1,就表示修改生效了。
  3. 使用iptables建立一个NAT
    sudo apt-get install iptables
    iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
    上面的24表示子网掩码,代表24个1.
    网卡要自己查看清楚那个是外网网卡,它配的ip是外网ip,查看命令ifconfig(eth0/eth1)
    这一部分是备注,我找的资料是ubuntu,所以这部分centos没有。
    《=================================》
    为防止重启服务器后iptables丢失,先运行
    iptables-save > /etc/iptables-rules
    然后修改文件 /etc/network/interfaces ,在eth0/eth1.. 下面加入
    pre-up iptables-restore < /etc/iptables-rules
    《=================================》
  4. 现在应该就搞定了。
    不放心的话可以重启 server,或者重启 pptpd
    sudo /etc/init.d/pptpd restart
  5. 在client端设置连接VPN进行测试,client是Ubuntu的话请看这里
    8.1 测试是否可以连接到VPN server:
    ping server_IP
    不能的话,问题应该出在前4步。
    8.2 测试是否可以连接到外网:
    ping 8.8.8.8 (任何其他外网IP都行)
    不能的话,问题应该出在第5-6步,看看是否正确设置了 ipv4 forward
    8.3 测试是否可以解析DNS:
    nslookup google.com
    不能的话,应该是服务器端的DNS设置有问题。
    如果以上都没有问题,恭喜~~
    有问题的话,抬头是google
    参考文献:
    pptpd配置:
    http://poptop.sourceforge.net/dox/debian-howto.phtml
    连接VPN:
    https://www.vpncup.com/config/ubuntu
    http://ubuntuforums.org/showthread.php?t=1451996

标签: vpn, centos

已有 2 条评论

  1. VPN是不是挂 了

    1. L L

      没挂,google那个站被防火墙屏蔽了

添加新评论