發這篇文章的原因基於pincong有大量的用戶因為自己開的shadowsocks被封,機場三天兩頭用不了,或是在別的地方(例如v2ex)看到別人吹捧v2ray/ssrr 貶低shadowsocks。再加上黨國爆出了一些所謂人工智慧檢測shadowsocks的論文,導致很多人認為shadowsocks已經是一個不安全的翻牆工具。因此在這裡對shadowsocks配置做一個簡單的科普。
先上結論,shadowsocks並沒有失效,黨國也沒有手段來破解shadowsocks的加密,那篇基於lstm的人工智慧論文在專業人士看來完全就是笑話,請敬請放心使用,如果你的ss用不了,請按照我以下列出的幾部分一一進行檢查。
小白如果覺得本文太麻煩,推薦直接下載這些翻牆軟體或APP
禁聞瀏覽器、SS VPN、SpeedUp VPN、V2ray VPN、動網新聞APP
請收藏轉載分享本頁面或使用短網址:
https://git.io/afq
禁聞瀏覽器(JWBrowser)
Android版禁聞瀏覽器,一個安卓翻牆瀏覽器。SpeedUp VPN
Android版SpeedUp VPN,Fork自ShadowsocksRb,兼容ShadowsocksR(SSR)協議,內置免費SSR伺服器。 如果您對內置SSR VPN伺服器不滿意,則可以自行添加或導入自己的ShadowsocksR(SSR)伺服器使用。
- Google Play下載:SpeedUp VPN
- Github下載:SpeedUp VPN
- 網盤下載:SpeedUp VPN
SS VPN
Android版SS VPN,Fork自SSVPN,兼容Shadowsocks協議,內置免費Shadowsocks伺服器。 如果您對內置Shadowsocks VPN伺服器不滿意,則可以自行添加或導入自己的Shadowsocks伺服器使用。V2ray VPN
Android版V2ray VPN,Fork自v2rayNG,兼容V2ray/Project V的vmess協議,內置免費無限流量V2ray翻牆伺服器。 如果您對內置V2ray伺服器不滿意,則可以自行添加或導入自己的V2ray伺服器使用。
【shadowsocks配置部分】
1、打開你的shadowsocks客戶端,在加密那一欄里你會看到接近20種不同的加密演算法,在其中可以粗略的分為AEAD加密和非AEAD加密,具體技術細節有興趣了解的可以自行Google。結論就是現在請務必使用AEAD加密的演算法(chacha20-ietf-poly1305、xchacha20-ietf-poly1305、aes-128-gcm、aes-192-gcm、aes-256-gcm),目前xchacha20-ietf-poly1305和aes-256-gcm是最佳的選擇,由於各大平台的cpu現在對aes演算法都有較好的優化,我個人推薦aes-256-gcm。
2、關於客戶端的選擇,應該去哪裡下載shadowssocks客戶端呢?答案是github,請不要去任何非github平台下載ss客戶端(如果你買的機場不給你伺服器相關信息,需要賬號密碼登錄專用客戶端,那就沒辦法了)。在這裡要特別說一下iOS平台,iOS沒有官方的shadowsocks客戶端,很多免費應用都不支持AEAD演算法,請買禮品卡在外區購買shadowrocket,或者使用免費的outline。
3、在自行配置shadowsocks伺服器的時候,很多攻略仍然寫的是基於Python的shadowsocks-server,請不要再參考這些攻略!!!基於python的那個版本已經三年沒有更新了,很多教程甚至還在用五年前的2.8.2版,請儘快轉用C語言的shadowsocks-libev,github地址:https://ift.tt/1MDgF2V
【關於黨國封禁shadowsocks伺服器的策略】
1、當你shadowsocks發現用不了的時候,不要慌張,首先你要做的是排錯,確定是哪部分出了問題。黨國封殺伺服器一般分為ip封殺和埠封殺,請務必先確認是伺服器ip地址還是伺服器ss埠被牆。要怎麼確認呢?打開你電腦的cmd,先ping一下你的伺服器地址,看看還通不通,如果發現是通的,使用命令 telnet 你的伺服器地址 你的伺服器埠(例如:telnet 1.1.1.1 8838)如果你伺服器能ping通但是telnet你的伺服器shadowsocks埠不通的時候,更換埠就可以了。
2、終於要提到黨國的檢測方式了,在文末我會放一篇相關文章來進行論證,在這裡我還是只放出結論。黨國封殺你伺服器現在較為通用的方法是主動嗅探,舉例來說,就是當發現一個讓他懷疑的流量時,gfw會模擬一個shadowsocks請求發往你伺服器的那個shadowsocks埠,由於密碼是錯的,這時候你的伺服器會返還一個類似於密碼錯誤的回包,這樣gfw雖然無法連接你的伺服器,但是他就可以猜測這台伺服器是用來翻牆的。這就是主動嗅探的基本原理,只要你流量足夠大,連接的人足夠多,或者你伺服器的ip是著名翻牆vps運行商(所謂臟ip),就有極大可能被封禁。在這裡你可以看出,黨國沒有解密你的包,仍然無法知道你訪問了什麼網站,是不是真的用來翻牆,但是由於可能性很高,就被封禁了。
3、主動嗅探比起技術方式更像是一種社會工程學原理,無論什麼樣的翻牆技術手段,都會中招,並不是shadowsocks存在技術漏洞,而是黨國對ss的回包已經很熟悉了而已。而這一點,我們完全可以通過技術手段進行避免。
【為你的伺服器添加訪問白名單】
1、如果你伺服器只允許特定的ip進行訪問,那黨國防火牆的主動嗅探也就失去了作用,因為黨國不知道你允許了哪些地址,所以它所有嘗試嗅探的操作都會被你伺服器的防火牆(以其人之道還治其人之身 笑)給攔下,相當於還沒有到你ss服務已經被你的伺服器給攔下來,這種攔截是不具備特徵的,而在現實中各大公司的伺服器也是這麼操作的。例如你是不可能訪問Google的內部伺服器,因為Google限定了可訪問機器的ip。
2、具體操作方法你可以使用iptables命令
iptables –append INPUT –protocol tcp –dport 1080 –jump DROP
先禁止所有人訪問你的ss 1080埠
iptables –append INPUT –protocol tcp –src 1.1.1.1 –dport 1080 –jump ACCEPT
這條命令的意思是僅允許1.1.1.1訪問你ss 1080埠
service iptables save
service iptables restart
記得保存和重啟服務哦
3、我們現在都是動態ip,沒有指定的地址要怎麼辦呢?事實上沒辦法,所以我建議你再開一台伺服器做流量的轉發,然後你ss伺服器只允許你轉發伺服器的ip地址,如果說轉發伺服器在國內,就會形成一個點對點的ss訪問,只有你轉發伺服器到你ss伺服器之間過一次牆,流量又是兩個固定ip之間在訪問,對於隱蔽流量是大有裨益的,至於linux怎麼配置埠轉發這裡就寫不下了,歡迎Google。
【正文部分:Shadowsocks是如何被檢測和封鎖的】
這篇論文寫的非常好,希望所有人都去看一看,對黨國封鎖機製做了很具體的實驗
Shadowsocks是如何被檢測和封鎖的
免費安卓翻牆APP、Windows翻牆:ChromeGo
AD:搬瓦工官方翻牆服務Just My Socks,不怕被牆
原帖地址:https://ift.tt/38KqFJu
from 情系中華 – 澳洲新聞網 https://ift.tt/2wArOFe
via IFTTT


沒有留言:
發佈留言