这两个月Google不能访问后,一直在用以前“购买的VPS通过SSH+FireFox的方式翻墙”,这需要在Windows电脑上进行一些设置,用到MyEntunnel这个小软件。
上周同事帮忙安装了一台Ubuntu桌面的台式机,我在上面也用类似的办法可以访问Google等国外网站。
但手机、平板电脑上还不方便这样操作,不好装软件,不过所有的智能手机、平板电脑及笔记本、台式机上都有VPN的功能,这其实是更标准的翻墙办法,只是以前没有找到合适的VPN服务器,自己搭建也没有成功。
这个周末在网上找了一些资料,经过一番摆弄,总算是在购买便宜的128M内存VPS上安装好了VPN服务,具体设置办法请参考:《Openvz VPS一键PPTP包安装及添加用户教程(CentOS 5 32位/6 32及64位)》,下载运行博主编辑的openvps_vpn_centos-5-6.sh就可以实现一键安装!
脚本内容如下,可能有变动:
#!/bin/bashfunction installVPN5(){ yum -y install make libpcap iptables gcc-c++ logrotate tar cpio perl pam tcp_wrappers rpm -ivh dkms-2.0.17.5-1.noarch.rpm rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm rpm -qa kernel_ppp_mppe rpm -Uvh ppp-2.4.4-9.0.rhel5.i386.rpm rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm}function installVPN6(){ yum -y install make libpcap iptables gcc-c++ logrotate tar cpio perl pam tcp_wrappers rpm -ivh dkms-2.0.17.5-1.noarch.rpm rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm rpm -qa kernel_ppp_mppe rpm -Uvh ppp-2.4.5-17.0.rhel6.$arch.rpm rpm -ivh pptpd-1.3.4-2.el6.$arch.rpm}function setting(){ mknod /dev/ppp c 108 0 echo 1 > /proc/sys/net/ipv4/ip_forward echo "mknod /dev/ppp c 108 0" >> /etc/rc.local echo "echo 1 > /proc/sys/net/ipv4/ip_forward" >> /etc/rc.local echo "localip 172.16.36.1" >> /etc/pptpd.conf echo "remoteip 172.16.36.2-254" >> /etc/pptpd.conf echo "ms-dns 8.8.8.8" >> /etc/ppp/options.pptpd echo "ms-dns 8.8.4.4" >> /etc/ppp/options.pptpd pass=`openssl rand 6 -base64` if [ "$1" != "" ] then pass=$1 fi echo "vpn pptpd ${pass} *" >> /etc/ppp/chap-secrets iptables -t nat -A POSTROUTING -s 172.16.36.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 172.16.36.0/24 -j TCPMSS --set-mss 1356 service iptables save chkconfig iptables on chkconfig pptpd on service iptables start service pptpd start echo "===========================LaoZuo.ORG=====================================" echo "VPN service is installed, your VPN username is vpn,VPN password is ${pass}" echo "===========================LaoZuo.ORG====================================="}function centos5(){ echo "begin to install VPN services"; #check wether vps suppot ppp and tun yum remove -y pptpd ppp iptables --flush POSTROUTING --table nat iptables --flush FORWARD rm -rf /etc/pptpd.conf rm -rf /etc/ppp arch=`uname -m` wget http://www.laozuo.org/download/scripts/dkms-2.0.17.5-1.noarch.rpm wget http://www.laozuo.org/download/scripts/kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm wget http://www.laozuo.org/download/scripts/pptpd-1.3.4-1.rhel5.1.i386.rpm wget http://www.laozuo.org/download/scripts/ppp-2.4.4-9.0.rhel5.i386.rpm installVPN5 setting}function centos6(){ echo "begin to install VPN services"; #check wether vps suppot ppp and tun yum remove -y pptpd ppp iptables --flush POSTROUTING --table nat iptables --flush FORWARD rm -rf /etc/pptpd.conf rm -rf /etc/ppp arch=`uname -m` wget http://www.laozuo.org/download/scripts/dkms-2.0.17.5-1.noarch.rpm wget http://www.laozuo.org/download/scripts/kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm wget http://www.laozuo.org/download/scripts/pptpd-1.3.4-2.el6.$arch.rpm wget http://www.laozuo.org/download/scripts/ppp-2.4.5-17.0.rhel6.$arch.rpm installVPN6 setting}function repaireVPN(){ echo "begin to repaire VPN"; mknod /dev/ppp c 108 0 service iptables restart service pptpd start}function addVPNuser(){ echo "input user name:" read username echo "input password:" read userpassword echo "${username} pptpd ${userpassword} *" >> /etc/ppp/chap-secrets service iptables restart service pptpd start}echo "please select your operation system"echo "which do you want to?input the number."echo "1. my system is centos5 32bit(only support 32bit)"echo "2. my system is centos6 32bit or 64bit(they are support)"echo "3. repaire VPN service"echo "4. add VPN user"read numcase "$num" in[1] ) (centos5);;[2] ) (centos6);;[3] ) (repaireVPN);;[4] ) (addVPNuser);;*) echo "nothing,exit";;esac
作者老左不仅编辑整理了脚本,还在自己的服务器上放置了几个需要下载的文件,对我这样不太懂Linux下设置的人来说非常方便,致敬!还有更多其它版本环境的设置办法和脚本都可以去http://www.laozuo.org 查找。
这样设置启用VPN服务器后,就只对自己或者身边少数人提供服务,应该是不会有麻烦的,基本上就可以完全解决自己上国外网站的问题。在Windows, Linux, MAC机器以及智能手机、平板电脑上都已经顺利设置了VPN客户端,在需要访问国外网站时打开VPN,在只需要访问国内网站的时候关闭VPN以便速度更快。
?