目前最流行的科学上网方式应该是ss了。配置简单,使用方便,特征不明显,这使得GFW要想识别ss流量非常困难。ss无疑是成功的,极大的满足了人们扶墙的需求。但是,墙是会不断进化的,自从墙诞生以来一大批科学上网工具倒下了。
包括但不限于:
- http/socks代理
- PPTP、L2TP/IPsec、OpenVPN
- SSH Tunnel
- GAE
- ……还有许许多多我不知道的无名英雄
谁又能保证在将来的某一天ss不会被不断进化的墙找到特征并最终被墙掉呢….
所以我们不能太过于依赖一种工具需要找几个替代品,以防万一。
据我所知在GFW的摧残下目前还能坚挺的科学上网姿势只剩以下几种:
- https/ssl代理
- SSTP、IKEv2、Cisco AnyConnect、个别私有协议的VPN
- 以shadowsocks为代表的一些私有协议的tunnel
今天要介绍的是这种姿势是利用obfsproxy来混淆并转发普通http代理的流量(其实其他协议也可以,方法类似),可以简单理解为一种私有协议吧。
由于这种姿势比较冷门,所以没有像ss那样被GFW盯上,也很少会被墙针对性的干扰,所以速度非常快。
obfsproxy是由Tor Project为Tor在被审查的国家使用而开发出的流量混淆插件,tinyproxy是一个轻量级的http/https代理。
废话不多说,直接开工~
配置tinyproxy服务端:
CentOS:
yum install tinyproxy
Debian:
apt-get install tinyproxy
不需要修改配置文件,特别是别手贱把Allow 127.0.0.1这一行注释掉。
否则容易被别有用心的人用扫描器扫出http代理的端口然后疯狂的跑流量!
配置obfsproxy服务端:
安装环境:
CentOS:
yum install python-setuptools python-devel pycrypto gcc && easy_install pip
Debian:
apt-get install python-setuptools python-dev gcc
安装obfsproxy:
pip install obfsproxy
带参数启动obfsproxy:
obfsproxy –data-dir ~/.obfs/ scramblesuit –dest 127.0.0.1:8888 –password FUCKGFW2333333333333333333333333 server 0.0.0.0:443 &
如果在某些版本的系统中上述命令出现问题可以试试这条:
obfsproxy –data-dir=/tmp/scramblesuit-server scramblesuit –password=FUCKGFW2333333333333333333333333 –dest=127.0.0.1:8888 server 0.0.0.0:443
各参数的含义:
data-dir 指定存放临时文件的目录…..我也不太清楚说错了不要喷我(〜 ̄△ ̄)〜scramblesuit 指定obfsproxy以scramblesuit模式运行指定obfsproxy服务端收到被混淆的数据后解除混淆并转发给dest指定的端口,这里的8888端口是tinyproxy的默认端口
password 这个不用解释吧(=・ω・=) 不过要注意的是密码必须为BASE32字符..就是说密码必须为大写字母+数字的组合且必须为32位,建议改成你自己的密码
server 指定对外监听的端口,0.0.0.0意思是全网都能访问,端口建议填一些常用端口如443、25,如果修改成了其他端口记得修改你的iptables或者防火墙开放那个端口
如果不需要后台运行的话可以去掉最后那个&
PS:其实这货除了scramblesuit还支持其他几种模式obfs1、obfs2、obfs3、obfs4等等…不过由于1、2、3已经可以被某长城识别,4是scramblesuit的改进版….不过4貌似不支持密码(?存疑)
哪天scramblesuit不能用了我再写个obfs4的教程吧…..你懒就直说
配置客户端:
https://www.torproject.org下载tor安装好之后打开安装目录下的Browser\TorBrowser\Tor\把PluggableTransports整个目录复制出来并改名为obfsproxy(不改也可以,后面的教程记得替换为相应的名字)
然后在obfsproxy的上一级文件夹创建一个bat文件
bat文件内容:
obfsproxy\obfsproxy.exe scramblesuit –password=FUCKGFW2333333333333333333333333 –dest=你的服务器IP:443 client 127.0.0.1:23333
运行这个bat文件
然后在IE的Internet选项→链接→局域网设置里勾选为LAN使用代理服务器,地址127.0.0.1 端口23333 这样是全局代理
如果你需要国内网站直连被墙的网站才走代理的话可以使用这个PAC https://fuckgfw233.org/fuckgfw.pac
~施工完成(〃∀〃)
我已经把这些文件打包了,如果你信得过我的话可以直接从我这下(当然你还是得把bat文件里的服务器地址改成你自己的)。
obfsproxy