关于SS的一点笔记

关于SS的一点笔记过年的时候抽了点时间了解了下 ss 的协议

大家好,欢迎来到IT知识分享网。

过年的时候抽了点时间了解了下ss的协议。整理了一点笔记,一直没有时间发。今天发一下,免得忘了。

SS的结构本身比较简单,他的基本结构如下:

  1. ss通常分为client和server两部分
  2. client是一个sock5代理服务器,本地需要代理的流量先将其发往客户端
  3. server也是一个代理服务器,它们之间走的协议不是sock5或http,是一套私有的密文传播的协议。
  4. ss client基于ss proxy协议协议,将转发的流量加密,发送给ss server。ss server将数据包解密,发送给实际服务器。响应过程流程则相反。

  关于SS的一点笔记

有了这些知识,我们可以得出如下结论。

  1. ss server本身也只是一个代理服务器,它的协议并不是sock5或http,而是自己的一个私有协议(本文暂且将其称为ss proxy协议)。它主要的功能是将流量加密传输,从而躲避被方校长识别,它不具有加速网络的能力。
  2. ss client本身并不是必要的,ss server本身也是一个代理服务器,如果浏览器本身支持ss proxy协议,是可以不需要ss client的。
  3. ss client的作用是将sock5协议转换为ss proxy协议,对于应用来说,它是一个sock5的代理服务器。从而使得支持sock5协议的应用都可以使用 ss。有的ss client也支持将http代理转换为ss proxy协议

有兴趣的朋友可以看一下ss proxy 协议,本身并不复杂,相信有网络编程基础的人应该可以很快编写一个ss client和server。也可以通过调试ss client的代码加速自己的开发。

另外,需要说明的是:虽然内容被加密了,但ss协议本身也不是不可被检测的,即使加密算法不可攻破,也可以通过ss协议特征判断出是否是ss协议。特别是早期的协议,还是比较脆弱的,感兴趣的朋友可以看下这篇文章为何 shadowsocks 要弃用一次性验证 (OTA)。

最后,提几个关于ss防检测的几个方法。

  1. 启用AEAD加密算法,不要使用不安全的早期协议
  2. 不要过度使用,异常的流量还是比较容易检测出来的。
  3. Server端: ss server到目的服务器这一部分的流量是没有加密的。检测服务器是否运行ss server是非常容易的。因此不要在国内厂商的服务器上搭建ss server。
  4. client端: 正所谓家贼难防,一些国产管家会向方校长主动上报本机的ss client配置,上报后服务器ip基本上就加入黑名单了。
  5. 最好不要组合openvpn和ss一起使用,因为open vpn还是比较容易检测的,以免殃及池鱼。
  6. 改造ss client和ss server,使用自己的私有协议。这个方式实际上工作量并不大,并且也很有效,不过涉及到生态的问题。 ss client除了在pc上,往往还在手机,路由器等上面也有涉及,每种环境都要自己开发还是有点累的。

转载于:https://www.cnblogs.com/TianFang/p/10480348.html

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/145158.html

(0)
上一篇 2025-04-21 19:15
下一篇 2025-04-21 19:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信