Shadowsocks(影梭)是使用Python等语言开发的、基于 Apache 许可证开源的代理软件。Shadowsocks 使用socks5代理,用于保护网络流量。在中国大陆被广泛用于突破防火长城(GFW),以浏览被封锁的内容。
Shadowsocks 分为服务器端和客户端。在使用之前,需要先将服务器端部署在支持 Python 的服务器上面,然后通过客户端连接并创建本地代理。
2015 年 8 月 22 日开发者因受到中国政府的压力,停止维护此项目。但仍有更新陆续推送。
运行原理
Shadowsocks 的运行原理与其他代理工具基本相同,使用特定的中转服务器完成数据传输。
在服务器端部署完成后,用户需要按照指定的密码、加密方式和端口使用客户端软件与其连接。在成功连接到服务器后,客户端会在用户的电脑上构建一个本地 socks5 代理。浏览网络时,网络流量会被分到本地 socks5 代理,客户端将其加密之后发送到服务器,服务器以同样的加密方式将流量回传给客户端,以此实现代理上网。
特点
- Shadowsocks 使用自行设计的协议进行加密通信。[3]加密算法有 AES、Blowfish、IDEA、RC4 等,除创建 TCP 连接外无需握手,每次请求只转发一个连接,因此使用起来网速较快,在移动设备上也比较省电。
- 所有的流量都经过算法加密,允许自行选择算法,所以比较安全。
- Shadowsocks 通过异步 I/O 和事件驱动程序运行,响应速度快。
- 客户端覆盖多个主流操作系统和平台,包括 Windows,OS X,Android 和 iOS 系统和路由器(OpenWrt)等[4]。
- 专为移动设备和无线网络优化。
安全性
然而 Shadowsocks 自行设计的加密协议对双方的身份验证仅限于预共享密钥,亦无完全前向保密,也未曾有安全专家公开分析或评估协议及其实现。
Shadowsocks 不能替代 TLS 或者 VPN,本质上只是设置了密码的网络代理协议,不能用作匿名通信方案,该协议的目标不在于提供完整的通信安全机制,主要是为了协助上网用户在严苛的网络环境中突破封锁。
在某些极端的环境下,通过深度包检测(DPI)也有可能识别出协议特征。为了确保安全,用户应做好额外的加密和验证措施,以免泄露信息,无论使用的服务器来源是否可靠。
停止维护
2015 年 8 月 22 日,其作者 Clowwindy 在 GitHub 上称,警察在两日前要求他停止开发 Shadowsocks 并删除其所有代码。之后,作者停止维护 Shadowsocks,其 GitHub 页面已被清空。]消息传出后,许多中国和外国开发商,以及 Shadowsocks 用户,在 GitHub 中对作者表示了致谢,对项目加星标,因此在当时 Shadowsocks 成为了 GitHub 上的热门项目(Trending)。
作者:红岸 | 文章链接:https://wdgjx.com/article/3446.html
原哈希云团队提供技术支持,套餐低至15元/月。稳定、低延迟、简单易用,小白也能轻松上手。