• home > tools > NetTools > throughGFW >

    搞懂SSR(1):Shadowsocks基础科普与客户端及路由器配置

    Date:

    Shadowsocks技术的优缺点科普,利用Shadowsocks的方式 :服务器+客户端模式去使用Shadowsocks与路由器模式优劣分析,OpenWRT​固件比如小米路由器配置Shawdowsocks。

    通过技术手段,想访问国外的和政治无关的,主要是涉及到计算机技术开发相关的内容,比如google,Wikipedia,stackoverflow等等技术资源,用于技术学习等目的。

    VPN技术

    VPN是一套技术的总称,别称虚拟专网。比如很多公司就需要VPN在家办公。好点的IT公司,给VPN让员工上google,像我这等草根码农,就只有自己撸 了。

    而把VPN的技术用于科学上网,可以理解为,加了密的专用的网络/专线,从技术上保证不会被和谐掉。

    俗话说道高一尺魔高一丈。现在VPN基本越不过蔷了。基本被精准识别了

    工信部:中国VPN政策不影响用户信息安全,通信自由受保护科技湃澎湃新闻-The Paper》,此举是否影响现有的各类用来科学上网的VPN,包括多态,大家自行理解。

    VPN技术的优缺点

    • 优点:相对安全性还不错

    • 缺点:

      • 开启了VPN -> 所有网络请求都要走VPN -> 对于国内网站,本来无需翻墙,就浪费了流量,且访问速度不理想

      • 关闭了VPN -> 所有的都不走VPN -> 有些需要翻墙的就没办法

    总之:没法自动根据所要访问网站而决定是否翻墙 -> 即省流量又保证访问国内站点时速度快

    目前蔷针对VPN的封锁越来越严重,比较有名的OpenVPN已经点炮了!而PPTP也逐渐不稳定了起来。L2TP和IPSe0c目前还未阵亡。

    Shadowsocks技术

    Shadowsocks是一套技术和相关工具的总称,常被简称为ss,可以简单总结为:

    一套基于Socks5代理方式的网络加密传输数据包的技术= 用socks5技术加密的技术

    socks技术简介

    采用socks协议的代理服务器就是SOCKS服务器,是一种通用的代理服务器。Socks是个电路级的底层网关,是DavidKoblas在1990年开发的,此后就一直作为Internet RFC标准的开放标准。Socks 不要求应用程序遵循特定的操作系统平台,Socks 代理与应用层代理、 HTTP 层代理不同,Socks 代理只是简单地传递数据包,而不必关心是何种应用协议(比如FTP、HTTP和NNTP请求)。所以,Socks代理比其他应用层代理要快得多。

    Sock5代理服务器则是把你的网络数据请求通过一条连接你和代理服务器之间的通道,由服务器转发到目的地。你没有加入任何新的网络,只是http/socks数据经过代理服务器的转发送出,并从代理服务器接收回应。你与代理服务器通信过程不会被额外处理,如果你用https,那本身就是加密的。

    Shadowsocks全局模式与VPN的区别

    VPN控制的是你电脑的整个网络,只要需要连接到互联网的流量都会经过vpn。

    你的IP会被更换为VPN的IP。连接VPN只需要知道IP和账号密码。

    Shadowsocks的全局模式,是设置你的系统代理的代理服务器,使你的所有http/socks数据经过代理服务器的转发送出。而只有支持socks5或者使用系统代理的软件才能使用Shadowsocks(一般的浏览器都是默认使用系统代理)。

    经过代理服务器的IP会被更换。连接Shadowsocks需要知道IP、端口、账号密码和加密方式。但是Shadowsocks因为可以自由换端口,所以定期换端口就可以有效避免IP被封!

    Shadowsocks全局模式与PAC模式的区别

    上面已经解释了Shadowsocks的全局模式,而PAC模式就是会在你连接网站的时候读取PAC文件里的规则,来确定你访问的网站有没有被墙,如果符合,那就会使用代理服务器连接网站,而PAC列表一般都是从GFWList更新的。GFWList定期会更新被墙的网站(不过一般挺慢的)。

    简单地说,在全局模式下,所有网站默认走代理。而PAC模式是只有被墙的才会走代理,推荐PAC模式,如果PAC模式无法访问一些网站,就换全局模式试试,一般是因为PAC更新不及时(也可能是GFWList更新不及时)导致的。

    还有,说一下Chrome不需要Proxy SwitchyOmega和Proxy SwitchySharp插件,这两个插件的作用就是,快速切换代理,判断网站需不需要使用某个代理的(ss已经有pac模式了,所以不需要这个)。如果你只用shadowsocks的话,就不需要这个插件了!



    推广和宣传ss技术非盈利的官网:http://shadowsocks.org/

    github主页是:shadowsocks

    • Shadowsocks技术本身

      • SOCKS5代理

      • AEAD

      • 等等

    • Shadowsocks的服务端

      • Python的shadowsocks

      • shadowsocks-server

      • shadowsocks-libev

      • libQtShadowsocks

      • shadowsocks-go

      • 等等

    • Shadowsocks的客户端

      • Window

      • Mac

      • iOS

      • Android

      • 等等


    Shadowsocks技术的优缺点

    自动模式,可以自动判断访问某个网站是否要穿越,在速度和流量之间得到了平衡。

    利用Shadowsocks的方式

    而把Shadowsocks技术用于科学上网,则多种方案/方式可选择:

    服务器+客户端模式去使用Shadowsocks

    像我这等苦逼的码农,还是自己动手买VPS算了,一家人都可以用。



    客户端简称和别称图标Logo技术特点应用和技术现状
    ShawdowsocksSS飞机场飞机具有流量特征,易被运营商拦截仍有很多服务在用;原始作者被喝茶后停止维护,现由国外一大神维护
    ShawdowsocksRSSR酸酸乳、和SS一起被称为机场粉红色飞机是ss一个分支,兼容ss设置;带R表示增加了混淆协议,不易被流量监听作者被喝茶后,删除了所有github代码并停止维护一年以上了
    ShawdowsocksRRSSRR
    其实就是ShawdowsocksR因为原始作者被喝茶后,另一个大神维护起了SSR,取名字SSRR


    路由器模式

    不需要客户端的、更一劳永逸的、但更复杂的、也更方便的方案:路由器模式

    首先我们知道,我们一般上网都是通过连接了路由器提供的网络而才能去上网的。

    而如果通过设置,去实现了,在路由器内部本身就通过ss实现了科学上网,则意味着:

    其他使用此路由器提供的网络的人,不论是电脑(Window/Mac)还是手机端(iOS/Android),都无需额外设置,本身就可以达到科学上网的效果了。

    总的说就是:用路由器实现ss科学上网,其他连接此网络的设备,无需任何操作即可一劳永逸的直接科学上网了

    有一个基本的前提就是:路由器支持刷OpenWRT固件,装上合适的版本的OpenWrt的ss的客户端:Releases · shadowsocks/openwrt-shadowsocks

    比如小米路由器配置Shawdowsocks

    开启SSH权限,官方教程:http://d.miwifi.com/rom/ssh 

    对于小米路由器青春版及min版,官方不给ssh支持,其实青春版默认就启动了SSH服务,只是没有告诉我们密码,我们没法登陆,网上那个漏洞,就是直接修改了SSH的密码,让我们可以进行登陆。

    登陆路由器的管理界面,看浏览器地址里面的stok参数,如:

    http://miwifi.com/cgi-bin/luci/;stok=818a13694160103a2c76ffe3b9d8f1ab/web/home#router,

    然后命令行

    curl -d "oldPwd=<当前路由的管理员密码>&newPwd=<你想改成的密码-ssh登陆的密码与管理员密码,用户名为 root>" "http://192.168.31.1/cgi-bin/luci/;stok=<前面的stock>/api/xqsystem/set_name_password"

    curl -d "oldPwd=AdminPWD&newPwd=newRootPWD" "http://192.168.31.1/cgi-bin/luci/;stok=<前面的stock>/api/xqsystem/set_name_password"

    如果无法SSH登陆,则选择Telnet协议,登录进去后,执行以下代码:

    sed -i ":x;N;s/if \[.*\; then\n.*return 0\n.*fi/#tb/;b x" /etc/init.d/dropbear/etc/init.d/dropbear start
    nvram set ssh_en=1; nvram commit


    win10 powerShell mac 终端 链接路由器,接下来就是安装Shawdowsocks插件了,OpenWRT本来就是一个嵌入式linux系统,所以这里也就不多提了。个人还是在客户端安装。这里来讲linux安装 



    如果有可以,使用下面链接使用vultr 服务(赚点广告费)


    试一试……



    转载本站文章《搞懂SSR(1):Shadowsocks基础科普与客户端及路由器配置》,
    请注明出处:https://www.zhoulujun.cn/html/tools/NetTools/throughGFW/8389.html