ovz pptp

          Posted on 2013-09-06 17:15 H2O 閱讀(369) 評論(0)  編輯  收藏
          試了N個都是可以連上 上不了網(wǎng) 加了iptables也沒用 近乎絕望了。。
          用英文搜索了個老外的教程 非常給力 解決了
          感謝原作者 引用:
          http://www.maxwhale.com/pptp-vpn-on-debianubuntu-os-auto-installer/

          There are many VPN installation tutorials on google, some tutorials are not good for openVZ VPS. I found this auto installer works with Debian/Ubuntu OS on OpenVZ VPS and much easier to install.

          Check if PPP module is enable.

          cat /dev/ppp

          If you receive this message, PPP module is enable.

          cat: /dev/ppp: No such device or address

          Install:

          wget http://www.putdispenserhere.com/wp-content/uploads/pptpinstall.sh chmod +x pptpinstall.sh ./pptpinstall.sh

          Windows and Mac has application for access VPN, you don’t have to install any additional software.

          Note: this auto installer doesn’t work on any openvz VPS, I tried to install on 3 VPS,only got 1 VPS work with this script, and use recommend OS: Debian 5, 6, and Ubuntu 11.04.

          If you can’t access certain website, login SSH, and run below command:

          iptables -I FORWARD -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1356

          Script Source Code:

          #!/bin/bash # Interactive PoPToP install script on a OpenVZ VPS # Tested on Debian 5, 6, and Ubuntu 11.04 # 2011 v1.1 # Author: Commander Waffles # http://www.putdispenserhere.com/pptp-debian-ubuntu-openvz-setup-script/   echo "######################################################" echo "Interactive PoPToP Install Script for OpenVZ VPS" echo "by Commander Waffles http://www.putdispenserhere.com" echo "Should work on various deb-based Linux distos." echo "Tested on Debian 5, 6, and Ubuntu 11.04" echo echo "Make sure to message your provider and have them enable" echo "IPtables and ppp modules prior to setting up PoPToP." echo echo "You need to set up the server before creating more users." echo "A separate user is required per connection or machine." echo "######################################################" echo echo echo "######################################################" echo "Select on option:" echo "1) Set up new PoPToP server AND create one user" echo "2) Create additional users" echo "######################################################" read x if test $x -eq 1; then     echo "Enter username that you want to create (eg. client1 or john):"     read u     echo "Specify password that you want the server to use:"     read p   # get the VPS IP ip=`ifconfig venet0:0 | grep 'inet addr' | awk {'print $2'} | sed s/.*://`   echo echo "######################################################" echo "Downloading and Installing PoPToP" echo "######################################################" apt-get update apt-get install pptpd   echo echo "######################################################" echo "Creating Server Config" echo "######################################################" cat > /etc/ppp/pptpd-options <<END name pptpd refuse-pap refuse-chap refuse-mschap require-mschap-v2 require-mppe-128 ms-dns 8.8.8.8 ms-dns 8.8.4.4 proxyarp nodefaultroute lock nobsdcomp END # setting up pptpd.conf echo "option /etc/ppp/pptpd-options" > /etc/pptpd.conf echo "logwtmp" >> /etc/pptpd.conf echo "localip $ip" >> /etc/pptpd.conf echo "remoteip 10.1.0.1-100" >> /etc/pptpd.conf   # adding new user echo "$u   *   $p  *" >> /etc/ppp/chap-secrets   echo echo "######################################################" echo "Forwarding IPv4 and Enabling it on boot" echo "######################################################" cat >> /etc/sysctl.conf <<END net.ipv4.ip_forward=1 END sysctl -p   echo echo "######################################################" echo "Updating IPtables Routing and Enabling it on boot" echo "######################################################" iptables -t nat -A POSTROUTING -j SNAT --to $ip # saves iptables routing rules and enables them on-boot iptables-save > /etc/iptables.conf   cat > /etc/network/if-pre-up.d/iptables <<END #!/bin/sh iptables-restore < /etc/iptables.conf END   chmod +x /etc/network/if-pre-up.d/iptables cat >> /etc/ppp/ip-up <<END ifconfig ppp0 mtu 1400 END   echo echo "######################################################" echo "Restarting PoPToP" echo "######################################################" /etc/init.d/pptpd restart   echo echo "######################################################" echo "Server setup complete!" echo "Connect to your VPS at $ip with these credentials:" echo "Username:$u ##### Password: $p" echo "######################################################" # runs this if option 2 is selected elif test $x -eq 2; then     echo "Enter username that you want to create (eg. client1 or john):"     read u     echo "Specify password that you want the server to use:"     read p   # get the VPS IP ip=`ifconfig venet0:0 | grep 'inet addr' | awk {'print $2'} | sed s/.*://` # adding new user echo "$u   *   $p  *" >> /etc/ppp/chap-secrets   echo echo "######################################################" echo "Addtional user added!" echo "Connect to your VPS at $ip with these credentials:" echo "Username:$u ##### Password: $p" echo "######################################################" else echo "Invalid selection, quitting." exit fi

          if you can't connect to website,you can try:(open fowarding by iptables)
          iptables -t nat -A POSTROUTING -s 192.3.169.0/24 -j SNAT --to-source `ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk 'NR==1 { print $1}'`
          iptables -A FORWARD -p tcp --syn -s 192.3.169.0/24 -j TCPMSS --set-mss 1356
          service iptables save

          另外一個腳本
          #!/bin/bash

          get_char()

              {

              SAVEDSTTY
          =`stty -g`

              stty 
          -echo

              stty cbreak

              dd 
          if=/dev/tty bs=1 count=1 2> /dev/null

              stty 
          -raw

              stty echo

              stty 
          $SAVEDSTTY

              }

          clear

          ip
          =$(ifconfig | grep 'inet addr:'| grep -'127.0.0.1' | cut -d: -f2 | awk '{ print $1}')
          echo 
          "$ip"

                  echo 
          "==========================="

          serverip
          =""
          while [ "$serverip" = "" ]; do
                  echo 
          "Which IP is your server IP:"
                  
          read -p"IP:"  serverip
          done
                  echo 
          "==========================="
                  echo 
          "Server IP:$serverip"
                  echo 
          "==========================="
                  
                  echo 
          "==========================="

          ifconfig

          netdriver
          =""
          while [ "$netdriver" = "" ]; do
                  echo 
          "Please input the netdriver of your server:"
                  
          read -p"Net Driver:"  netdriver
          done
                  echo 
          "==========================="
                  echo 
          "Net Driver:$netdriver"
                  echo 
          "==========================="
                  
          username
          =""
          while [ "$username" = "" ]; do
                  echo 
          "Please input the username of PPTP:"
                  
          read -p"Username:"  username
          done
                  echo 
          "==========================="
                  echo 
          "PPTP Username:$username"
                  echo 
          "==========================="
                  
          password
          =""
          while [ "$password" = "" ]; do
                  echo 
          "Please input the password of PPTP:"
                  
          read -p"Password:"  password
          done
                  echo 
          "==========================="
                  echo 
          "PPTP Password:$password"
                  echo 
          "==========================="
                  
              echo 
          "Press any key to continue."        
              char
          =`get_char`
          apt
          -get -y update
          apt
          -get -y install pptpd
          sed 
          -"s#\#localip 192.168.0.1#localip 192.168.0.1#g" /etc/pptpd.conf
          sed 
          -"s#\#remoteip 192.168.0.234-238,192.168.0.245#remoteip 192.168.0.234-238,192.168.0.245#g" /etc/pptpd.conf
          wget http
          ://soft.yzs.me/pptpd-options -/etc/ppp/pptpd-options
          touch 
          /var/log/pptpd.log
          sed 
          -'s/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf
          sysctl 
          -p
          iptables 
          -t nat -A POSTROUTING -192.168.0.0/24 -$netdriver -j MASQUERADE
          iptables 
          -t nat -A POSTROUTING -192.168.0.0/24 -$netdriver -j SNAT --to-source $serverip
          echo 
          "$username * $password *">>/etc/ppp/chap-secrets
          sed 
          -"1i\iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o $netdriver -j MASQUERADE;iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o $netdriver -j SNAT --to-source $serverip" /etc/rc.local
          service pptpd restart
          #!/bin/bash

          get_char()

              {

              SAVEDSTTY
          =`stty -g`

              stty 
          -echo

              stty cbreak

              dd 
          if=/dev/tty bs=1 count=1 2> /dev/null

              stty 
          -raw

              stty echo

              stty 
          $SAVEDSTTY

              }

          clear

          username
          =""
          while [ "$username" = "" ]; do
                  echo 
          "Please input the username of PPTP:"
                  
          read -p"Username:"  username
          done
                  echo 
          "==========================="
                  echo 
          "PPTP Username:$username"
                  echo 
          "==========================="
                  
          password
          =""
          while [ "$password" = "" ]; do
                  echo 
          "Please input the password of PPTP:"
                  
          read -p"Password:"  password
          done
                  echo 
          "==========================="
                  echo 
          "PPTP Password:$password"
                  echo 
          "==========================="
                  
              echo 
          "Press any key to continue."        
              char
          =`get_char`
          echo 
          "$username * $password *">>/etc/ppp/chap-secrets
          service pptpd restart
          echo 
          "All finish."

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           

          posts - 0, comments - 21, trackbacks - 0, articles - 101

          Copyright © H2O

          主站蜘蛛池模板: 寻乌县| 板桥市| 高平市| 双柏县| 灌南县| 集贤县| 安吉县| 大新县| 宜川县| 安国市| 忻城县| 武汉市| 沂水县| 左权县| 海晏县| 清新县| 宾阳县| 枞阳县| 阳城县| 沙雅县| 碌曲县| 清丰县| 积石山| 凤庆县| 武鸣县| 巴彦淖尔市| 武宁县| 轮台县| 横山县| 武夷山市| 乌鲁木齐市| 云和县| 沐川县| 扎鲁特旗| 乐山市| 陇南市| 灵丘县| 辽阳县| 龙岩市| 沈丘县| 延津县|