移动端 | 加入收藏 | 设为首页 | 最新ss | 赞助本站 | RSS
 

freefq.comfree——免费、自由fq——翻墙

困在墙内,请发邮件到freefqcom#gmail.com获得最新免费翻墙方法!
您当前的位置:首页 > 网络翻墙技巧

做自己的科学上网,让别人羡慕去吧

时间:2016-05-07  来源:  作者:figotan 条评论

科学上网是如何上网学科学的第一步,翻出去,看更大的世界,学更多的知识,了解更多的文化,开阔更广袤的技术视野。笔者总结和实践了一些自己搭建VPN的经验和经历,分享给大家。

首先讲为什么所有的事情都要自己做,当下市面上已经有了如此之多的解决方案和产品,开源的,免费的,收费的,各种各样的,因为某些原因这里就不一一列举了。但是除了全程参与客户端设置和服务器部署的开源解决方案之外,几乎所有的产品和解决方案都有一个值得用户质疑的问题:安全。或者说的更准确一些,那就是:隐私安全
如果你是科学上网的用户,你可以问问自己这样一个问题,你花钱或者不花钱用的某一种科学上网服务,它保证不会监听你的上网行为吗?
所以我决定自己花钱买VPS,搭建一个专属自己的VPN服务器。5mZ免费翻墙网

如何选择VPS

说起自费自搭自建VPN上网服务,第一步是如何选择购买VPS服务。5mZ免费翻墙网

VPS(Virtual Private Server 虚拟专用服务器)技术,将一部服务器分割成多个虚拟专享服务器的服务。每个VPS都可分配独立公网IP地址、独立操作系统、独立空间、独立内存、独立CPU资源、独立执行程序和独立系统配置等。每一个VPS主机均可独立进行重启,并拥有自己的root访问权限、用户、IP地址、内存、进程、文件、应用程序、系统函数库以及配置文件。5mZ免费翻墙网

选择VPS比自己租用机房的硬件服务器的成本要低。关于VPS的详细介绍可以参考维基百科
国内和国外有很多VPS的供应商,出于某些需求,我选的是国外的VPS,选择国外的VPS服务主要考虑三个方面的问题,5mZ免费翻墙网

  • 服务商的口碑
  • 访问速度
  • 性价比

服务商的口碑

服务商的口碑是个很难衡量的问题,其他两个问题其实也和这个问题有直接或者间接的联系。关于口碑,一般是去一些靠谱的VPS推荐网站看看别人的评价。比如国内比较知名靠谱的熠锋美国主机评论,或者去quora,知乎(知乎上目前一般会推荐给你LinodeDigitalOceanVultr)上找找答案。5mZ免费翻墙网

访问速度

关于访问速度,如果服务商提供试用可以自己评测,或者去前面提到的网站上找找别人的评测文章,另外一个需要注意的是机房的选择,如果选择美国的主机,机房最好选在西海岸的一些城市,比如洛杉矶之类的,因为中国大陆相较于美国的城市中,西海岸是最近的,如果你在欧洲,那选东海岸的吧。如果有台湾,香港,日本和新加坡的机房那就最好不过了,不过就算有,貌似价格贵不少的,所以到了最后一个问题。5mZ免费翻墙网

性价比

性价比这个要自己看,选择几核心的CPU,多大的内存,多少容量的磁盘,多大的带宽,几个独立的IP地址,虚拟方式(OpenVZXenKVM)等,最后这些性能都会映射到价格。一分钱一分货,我的建议是合适就好,土豪除外。服务商一般会提供一些套餐组合,以及某段时间放出的特惠套餐,每年在圣诞节前后还会有一些优惠套餐的推出以及优惠码的放送。熠锋美国主机评论这个网站时常有收集最近的一些优惠信息,如果想找可以去看看。5mZ免费翻墙网

如何测试VPS性能

一些测试VPS性能的脚本工具可供参考:5mZ免费翻墙网

选择操作系统

再来是主机操作系统的选择,一般廉价的VPS都只提供Linux操作系统,我目前只有购买过安装Linux的VPS主机,所以想看Windows的可以就此打住了。就算是Linux操作系统,也只有提供某几个发行版的选择,UbuntuCentOSDebianArch Linux是常客。对于Linux操作系统,我个人除了GentooLFS以外,基本上不太常用其他的发行版。而支持Gentoo的VPS供应商(Linode)非常少,LFS几乎就没有了,至少还没有找到过。我购买的第一个VPS主机服务是Chicago VPS提供的年付12美刀基于Gentoo 64位的VPS,当时购买只是因为廉价和Gentoo,但是配置超烂,而且速度狂慢无比,所以在上面也没有做什么东西,基本上是为了以前给公司的一个创新项目做demo用了一下,后来废弃掉再也没有使用了。
再后来入手一个VPS(已被Chicago VPS收购),看起来配置还可以,性价比较高,配置是5mZ免费翻墙网

2048MB RAM  4 CPU Cores   40GB DiskSpace  2500GB Bandwidth  1 IPv4 Address  OpenVZ/SolusVM 

价格年付只要$30,平均每月$2.5,访问速度还可以,主要是年付30刀这样的价格应该算蛮便宜了。已经在上面成功运行http/https的网络代理服务tinyproxy和基于PPTP的VPN,手机上访问G+和Youtube比较流畅。唯一遗憾是不支持Gentoo系统,我选择了安装Ubuntu系统。想要知道更多的Linux发行版情况,请参考DistroWatch
非Linux系统,除了Windows外,UNIX世界里最流行的估计是FreeBSD了,它是Gentoo的灵感来源。5mZ免费翻墙网

以上提到的Linux,除了Gentoo和LFS适合Linux系统的开发者外,其他都适合用来做服务端部署和网站运营。个人觉得Ubuntu和CentOS是目前服务器市场份额较大且资料最全的两个选择了。5mZ免费翻墙网

从VPS到VPN

因为我租用的VPS是基于OpenVZ虚拟技术的。在网上查了下,有说只有基于Xen虚拟技术的VPS才可以做VPN,其实也不尽然。后来看到一篇帖子总结了什么样的VPS才可以做VPN服务,摘录如下:
OpenVZ一般可以搭建OpenVPN(只需开启Tun模块)有些还能搭建PPTP VPN和L2TP VPN(纯L2TP没有IPSEC加密)(只需开启PPP模块)(另外都需开启iptable nat模块以便转发上网),Xen/KVM的VPS可以搭建各种常见类型VPN。5mZ免费翻墙网

OpenVZ(不开Tun/Tap模块)

有些OpenVZ的VPS服务商连Tun/Tap模块都不给开更别说PPP模块了(比如Host1Free的免费VPS),这样基本上就没办法直接搭建VPN服务了。5mZ免费翻墙网

OpenVZ(开Tun/Tap模块)

一般收费VPS服务商(比如123systems)都会开Tun/Tap和iptable nat模块,有些VPS服务商的Tun/Tap模块默认开启,有的可以在面板后台自己打开,有的需要TK客服帮助打开,一般开Tun/Tap模块的服务商都会同时开启开iptable nat模块,这样就可以搭建OpenVPN服务了。 登录VPS后输入命令5mZ免费翻墙网

cat /dev/net/tun 

如果返回5mZ免费翻墙网

cat: /dev/net/tun: File descriptor in bad state5mZ免费翻墙网

就说明tun模块已经开启
输入命令5mZ免费翻墙网

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE 

如果返回5mZ免费翻墙网

iptables: No chain/target/match by that name5mZ免费翻墙网

就说明nat模块正常(也不一定都是返回这个结果,只要不提示iptables或nat不存在就行5mZ免费翻墙网

OpenVZ(开PPP模块)

不少VPS服务商除了可以开Tun/Tap和iptable nat模块外还可以开PPP模块(比如buyvm),这样不但可以搭建OpenVPN还可以搭建PPTP VPN和L2TP VPN(纯)了,PPP模块有的服务商默认开启,有的面板可自行开启,有的需要TK客服开启或编译。
登录VPS后输入命令5mZ免费翻墙网

cat /dev/ppp 

如果返回5mZ免费翻墙网

cat: /dev/ppp: No such device or address5mZ免费翻墙网

就说明ppp模块启动了(但是并不一定能用,如果不能用还是要TK客服开启相关设置的)5mZ免费翻墙网

Xen/KVM

Xen/KVM类型的VPS基本上可以搭建所有常见类型的VPN,比如OpenVPN、PPTP VPN、L2TP VPN(纯)、L2TP IPSec VPN、IPSec VPN(兼容Cisco或Windows 7及更高版本系统适用的IKEv2或适用塞班系统mVPN客户端)、SSTP VPN(需要VPS上安装Windows2008及更高版本)5mZ免费翻墙网

总结

在VPS上搭建VPN,对于虚拟方式的考虑,直接关系到VPN协议的支持与否,所以总结在这里5mZ免费翻墙网

  • OpenVPN最容易实现也被最多VPS服务商支持
  • 其次是PPTP/L2TP
  • OpenVZ貌似还不能虚拟IPSec所以目前都不支持L2TP IPSec VPN、Cisco IPsec VPN、IKEv2 IPSec VPN
  • Xen/KVM都比较强大,常见VPN都能搭建,所以是最好的选择,可惜价格一般比OpenVZ贵了不少

PPTP

下面就介绍下如何在VPS上搭建VPN的服务,从PPTP开始。 其实我在网上找了一堆资料,失败过N次后爬起来再折腾,最后终于成功。失败的实验就不讲了,这里讲讲整理过后的流程。5mZ免费翻墙网

开启ppp

首先ssh登录到申请的VPS机器上,检测PPP是否开启,命令如下5mZ免费翻墙网

cat /dev/ppp 

开启成功的标志: > cat: /dev/ppp: No such file or directory 或者 cat: /dev/ppp: No such device or address5mZ免费翻墙网

可以继续安装过程;
开启不成功的标志: > cat: /dev/ppp: Permission denied5mZ免费翻墙网

登录到VPS供应商提供的web portal端去自行”Enable PPP”,如果没有提供这样的开关的话那就只能给VPS提供商Submit一个Ticket请求开通了:5mZ免费翻墙网

Hello   Could you enabled PPP for me? I want run pptp-vpn on my VPS. Thank you. 

成功开启PPP以后,就可以安装了。有些教程里说还需要输入cat /dev/net/tun检测tun/tap是否开启,实际上这是完全不必要的。只是搭建PPTP,不需要TUN/TAP模块。5mZ免费翻墙网

安装必要软件

安装ppp和iptables5mZ免费翻墙网

sudo apt-get install ppp pptpd iptables iptables-persistent 

配置pptp

编辑/etc/pptpd.conf文件,把下面字段前面的#去掉即可,此处的IP段可以任意,但是尽量注意不要跟本地网络的IP段有冲突。5mZ免费翻墙网

localip 192.168.0.1 remoteip 192.168.0.234-238,192.168.0.245 

配置ppp

编辑/etc/ppp/pptpd-options文件,去掉ms-dns前面的#,并修改成如下字段:5mZ免费翻墙网

ms-dns 8.8.8.8 ms-dns 8.8.4.4 

设置PPTP VPN密码,修改/etc/ppp/chap-secrets文件,添加一行,内容如下(空格隔开):5mZ免费翻墙网

用户名    pptpd    密码    * 

第二行pptpd表示服务名称,在/etc/ppp/pptpd-options里name配置项中指定
最后一行”*“表示任何客户端ip都允许5mZ免费翻墙网

ip转发

修改内核设置,使其支持IP转发,编辑/etc/sysctl.conf文件,去掉”net.ipv4.ip_forward”左边的“#“:5mZ免费翻墙网

net.ipv4.ip_forward=1 

如下命令让配置生效5mZ免费翻墙网

sudo sysctl -p 

iptables设置

添加iptables转发规则,并保存5mZ免费翻墙网

sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source ***.***.***.***  sudo iptables -A FORWARD -s 192.168.0.0/24 -p tcp -m tcp --tcp-flags  FIN,SYN,RST,ACK SYN -j TCPMSS --set-mss 1356  

或者这样5mZ免费翻墙网

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

注意5mZ免费翻墙网

  • 192.168.0.0/24为/etc/pptpd.conf里分配的remoteip的地址范围
  • 转发规则可以用VPS的ip地址,也可以用VPS的对外网络接口, 分别是 -j SNAT --to-source 111.111.111.111(111.111.111.111为你VPS的公网IP地址) 或者 -j MASQUERADE -o eth0(eth0为你VPS的对外网络接口,可以用命令ifconfig查看)

持久化保存iptables的规则5mZ免费翻墙网

sudo service iptables-persistent save 

服务生效

重启pptpd服务5mZ免费翻墙网

sudo service pptpd restart 

L2TP

因为Android客户端已经不再支持非IPSEC加密方式的VPN配置了,所以这里只说L2TP on IPSEC的搭建方式5mZ免费翻墙网

安装软件

sudo apt-get install strongswan strongswan-plugin-xauth-generic ppp xl2tpd 

配置ipsec

编辑文件/etc/ipsec.conf, 输入如下内容5mZ免费翻墙网

conn vpnserver         type=transport         authby=secret         pfs=no         rekey=no         keyingtries=1         left=%any         leftprotoport=udp/l2tp         right=%any         rightprotoport=udp/%any         auto=add 

编辑文件/etc/ipsec.secrets,添加认证方式5mZ免费翻墙网

#验证用户所需的信息 : PSK "SECRET" # 这里 SECRET 可随意替换成你想要的密钥 

这里的SECRET就是iOS客户端配置里的”Secret“或者Android客户端配置里的”IPSec pre-shared key5mZ免费翻墙网

配置xl2tpd

编辑文件/etc/xl2tpd/xl2tpd.conf,输入如下内容5mZ免费翻墙网

[global] ipsec saref = yes saref refinfo = 30 port = 1701 access control = no ;debug avp = yes ;debug network = yes ;debug state = yes ;debug tunnel = yes  [lns default] ip range = 172.16.1.30-172.16.1.100 local ip = 172.16.1.1 refuse pap = yes require authentication = yes ;ppp debug = yes pppoptfile = /etc/ppp/options.xl2tpd length bit = yes 

配置ppp

编辑文件/etc/ppp/options.xl2tpd,输入如下内容5mZ免费翻墙网

require-mschap-v2 ms-dns 8.8.8.8 ms-dns 8.8.4.4 auth mtu 1200 mru 1000 crtscts hide-password modem name l2tpd proxyarp lcp-echo-interval 30 lcp-echo-failure 4 noccp nodefaultroute lock silent 

设置PPTP VPN密码,修改/etc/ppp/chap-secrets文件,添加一行,内容如下(空格隔开):5mZ免费翻墙网

用户名    l2tpd    密码    * 

第二行l2tpd表示服务名称,在/etc/ppp/options.xl2tpdname配置项中指定5mZ免费翻墙网

ip转发以及iptables配置

配置内容可参考pptp的相关配置,iptables转发ip地址根据文件/etc/xl2tpd/xl2tpd.confip range配置的ip地址范围来设置5mZ免费翻墙网

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

服务生效

重启服务5mZ免费翻墙网

sudo service strongswan restart sudo service xl2tpd restart 

启动或者重启xl2tpd服务的时候是不是会遇到 > setsockopt recvref[30]: Protocol not available xl2tpd.5mZ免费翻墙网

甭管它,继续就可以了。5mZ免费翻墙网

IPSEC

是不是觉得L2TP on IPSEC的配置过于繁琐?那么去掉ppp的配置,直接上IPSEC如何?关于什么样的VPS支持IPSEC,可以参考前面的内容。5mZ免费翻墙网

安装软件

sudo apt-get install strongswan strongswan-plugin-xauth-generic 

IPSEC配置

编辑文件/etc/ipsec.conf,实例配置如下5mZ免费翻墙网

config setup 	uniqueids=no  conn ipsec_xauth_psk 	keyexchange=ikev1 	authby=xauthpsk 	xauth=server 	left=%defaultroute 	leftsubnet=0.0.0.0/0 	right=%any 	rightsubnet=10.0.0.0/24 	rightsourceip=10.0.0.0/24 	rightdns=8.8.8.8 	auto=add 

编辑文件/etc/ipsec.secrets,添加认证方式5mZ免费翻墙网

#验证用户所需的信息 : PSK "SECRET" # 这里 SECRET 可随意替换成你想要的密钥 你的用户名 : XAUTH "你的密码" 

这里的SECRET就是iOS客户端配置里的”Secret“或者Android客户端配置里的”IPSec pre-shared key5mZ免费翻墙网

ip转发以及iptables配置

配置内容可参考pptp的相关配置,iptables转发ip地址根据文件/etc/ipsec.conf中 rightsourceip配置的ip地址范围来设置5mZ免费翻墙网

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

服务生效

重启服务5mZ免费翻墙网

sudo service strongswan restart 

IKEv2

安装EAP5mZ免费翻墙网

sudo apt-get install strongswan-plugin-xauth-eap strongswan-plugin-eap-mschapv2 

编辑文件/etc/ipsec.conf,实例配置如下5mZ免费翻墙网

config setup 	uniqueids=no  conn ipsec_ikev2_eap_psk 	keyexchange=ikev2 	left=%defaultroute 	leftsubnet=0.0.0.0/0 	leftauth=psk 	leftid=vpn.example.server 	right=%any 	rightsubnet=10.11.1.0/24 	rightsourceip=10.11.1.0/24 	rightdns=8.8.8.8 	rightauth=eap-mschapv2 	rightsendcert=never 	rightid=vpn.example.client 	eap_identity=%any 	auto=add 

设置iptables地址转发,具体请参考PPTP/L2TP/IPSEC等5mZ免费翻墙网

编辑文件/etc/ipsec.secrets,加入EAP认证用户名和密码5mZ免费翻墙网

: PSK "SECRET" # 这里 SECRET 可随意替换成你想要的密钥 用户名 : EAP "密码" 

IKEv2客户端配置(MAC&iPhone)

MAC OS X/iOS 客户端配置,虽然MAC OS X EI Capitan(10.11.4)和iOS 9的系统设置中可以手动添加IKEv2配置了,但是没法输入PSK(共享密钥),所以只能用描述文件的方式了。5mZ免费翻墙网

  1. 在MAC的App Store中搜索并安装Apple Configurator 2
  2. 启动Apple Configurator 2,点击”文件”->”新建描述文件”
  3. 选择”VPN”,然后点击”配置”
  4. 输入”连接名称“,”连接类型“选择”IKEv2”,“服务器”输入VPN服务器IP地址,“远程标识符”输入文件/etc/ipsec.conf中的”leftid“的值,“局部标识符”输入文件/etc/ipsec.conf中的”rightid“的值,”设备鉴定“请选择”共享密钥“,”共享密钥“请输入文件/etc/ipsec.secrets中的”SECRET“,勾上“启用 EAP”,“EAP 鉴定”选择“用户名/密码”,“账户”和“密码”是文件/etc/ipsec.secrets中的”用户名“和”密码“(这里必须填写,不然保存的描述文件中的“EAP 鉴定”会变成”证书“,从而导致连接VPN失败),具体内容可以参考下图所示
  5. 在设备上安装描述文件,这样设备上就可以使用这个VPN了。安装方式,如果是安装到MAC上,双击描述文件即可安装;iPhone则可以通过Apple Configurator 2来安装,用USB将iPhone连接到MAC,然后打开Apple Configurator 2安装描述文件;如果没有MAC,可以将描述文件部署到Web Server上,然后iPhone上打开Safari,输入描述文件完整的URL地址,完成安装。

证书访问方式

是个大主题,先按下不表,留坑,后期更新。5mZ免费翻墙网

最近笔者购买了DigitalOcean的VPS,所有上述方案,均本人亲测可行!!!如果有问题,可留言探讨解答相关技术,仅限技术讨论,其他免谈!!!5mZ免费翻墙网

分流与加速

可以参考iOS8 不越狱翻墙方案如何在 VPS 上搭建 VPN 来翻墙里提到的方案,留坑,待学习实践后再分享。5mZ免费翻墙网

其他非VPN科学上网方案

Shadowsocks

影梭5mZ免费翻墙网

Lantern (P2P)

蓝灯5mZ免费翻墙网

Tor

Tor5mZ免费翻墙网

gfw.press

GFW.Press5mZ免费翻墙网

谷歌镜像

谷歌镜像5mZ免费翻墙网

怀念下曾经的翻墙利器

GoAgent以及所有曾经借助Google App Engine服务翻墙的工具们,毁誉参半吧,实在不好说!
自由门,涉及政治问题,实在不便说!5mZ免费翻墙网

如果以上你实在是不愿意折腾折腾折腾,那么你可以选择买买买!反正这里我是不会荐荐荐的,如果你确实想要要要,那么,你可以去找找找。小道消息,Google Play上有大量的免费VPN,但是前提是,想上Google Play,需要先翻墙。又是一个鸡生蛋蛋生鸡的问题。5mZ免费翻墙网

后记

OpenVPN因为移动客户端(iOS和Android)配置非常麻烦,且翻墙效果不佳,这里不在赘述,感兴趣的朋友可以自行搜索资料学习。
Openswan据说热度被Strongswan甩了好几条街,所以这里也不介绍了。L2TP和IPSEC文中均采用Strongswan来搭建。5mZ免费翻墙网

参考资料

感谢网路上各位前辈高人大牛老司机的带路指点,排名不分先后,感恩不分轻重5mZ免费翻墙网

来自http://www.figotan.org/2016/05/04/cook-your-own-vpn/5mZ免费翻墙网

 5mZ免费翻墙网

 5mZ免费翻墙网

来顶一下
返回首页
返回首页
欢迎评论:免登录,输入验证码即可匿名评论 共有条评论
用户名: 密码:
验证码: 匿名发表

推荐资讯

Octohide VPN:快如闪电的免费VPN
Octohide VPN:快如闪
原子网络加速器 - 免费高速VPN 一键链接 方便快捷
原子网络加速器 - 免费
foxovpn绿狐VPN——即连即用、快速、安全
foxovpn绿狐VPN——即
Dubai VPN - Free, Fast & Secure VPN下载
Dubai VPN - Free, Fa
相关文章
栏目更新
栏目热门
墙外新闻
读者文摘

你可以访问真正的互联网了。You can access the real Internet.

管理员精中特别提醒:本网站域名、主机和管理员都在美国,且本站内容仅为非中国大陆网友服务。禁止中国大陆网友浏览本站!若中国大陆网友因错误操作打开本站网页,请立即关闭!中国大陆网友浏览本站存在法律风险,恳请立即关闭本站所有页面!对于您因浏览本站所遭遇的法律问题、安全问题和其他所有问题,本站均无法负责也概不负责。

特别警告:本站推荐各种免费科学上网软件、app和方法,不建议各位网友购买收费账号或服务。若您因付费购买而遭遇骗局,没有得到想要的服务,请把苦水往自己肚子里咽,本站无法承担也概不承担任何责任!

本站严正声明:各位翻墙的网友切勿将本站介绍的翻墙方法运用于违反当地法律法规的活动,本站对网友的遵纪守法行为表示支持,对网友的违法犯罪行为表示反对!

网站管理员定居美国,因此本站所推荐的翻墙软件及翻墙方法都未经测试,发布仅供网友测试和参考,但你懂的——翻墙软件或方法随时有可能失效,因此本站信息具有极强时效性,想要更多有效免费翻墙方法敬请阅读本站最新信息,建议收藏本站!本站为纯粹技术网站,支持科学与民主,支持宗教信仰自由,反对恐怖主义、邪教、伪科学与专制,不支持或反对任何极端主义的政治观点或宗教信仰。有注明出处的信息均为转载文章,转载信息仅供参考,并不表明本站支持其观点或行为。未注明出处的信息为本站原创,转载时也请注明来自本站。

鉴于各种免费翻墙软件甚至是收费翻墙软件可能存在的安全风险及个人隐私泄漏可能,本站提醒各位网友做好各方面的安全防护措施!本站无法对推荐的翻墙软件、应用或服务等进行全面而严格的安全测试,因此无法对其安全性做保证,无法对您因为安全问题或隐私泄漏等问题造成的任何损失承担任何责任!

S. Grand Ave.,Suite 3910,Los Angeles,CA 90071

知识共享许可协议
本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。