https://www.ptt.cc/bbs/WorkinChina/M.1472545423.A.D33.html   各位板友,午安: 隨著 GFW 以 CCA(Chosen-ciphertext Attack)對付 Shadowsocks   這種利用加密方式透過 Socks5 進行代理的翻牆方式後,似乎坑慘了部分   的服務供應商,當然連帶也影響周遭一些花錢買 SS 帳號或硬體的朋友。 日前板上亦有談及關於自建伺服器的話題,也恰好小弟近日又要被丟   過去對岸一段時間,勢必得為了自身網路順暢性再次提前做好準備,過去   隨手在 VMWare 架構下建置的 CentOS with SS-Go 的穩定性令人堪憂,   故利用這次重新建置的過程,將建置的相關步驟記錄下來,供各位在大陸   奮鬥的板友參考。   #前置準備 一、伺服器主機:VPS 的購買或設定有許多可參考文章(推薦 KVM 型態) 二、Linux 環境:不管是 ubuntu 或 CentOS 均可。 (本文採用 ubuntu 16.04.1 LTS,並完成更新) 三、SSH 連線工具:PuTTY   http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html   #透過 PuTTY 連線登入伺服器   一、開啟 PuTTY 並且於 Hostname 輸入主機 IP 或位置,SSH 預設端口為 Port 22,若無特定修改則無須變更。 http://imgur.com/a/qcaDv *備註:ubuntu 可能會需要另行安裝 SSH 套件方可啟用。 http://goo.gl/zM0wml   二、建議可使用 sudo apt-get update && apt-get upgrade 更新套件 http://imgur.com/y3Lwi9i   #開始安裝 Shadowsocks-Rss   一、為了板友在安裝上的便利性,本文採用 ShadowsocksR 一鍵安裝版本, (作者:秋水逸冰 Teddysun,https://shadowsocks.be/9.html)   二、輸入指令:取得批次安裝文件 shadowsocksR.sh sudo wget --no-check-certificate https://raw.githubusercontent.com/ teddysun/shadowsocks_install/master/shadowsocksR.sh 此為同一行指令,可複製後於 PuTTY 按右鍵貼上。 http://imgur.com/ux22PPN   三、輸入指令:改變檔案型態為執行 chmod +x shadowsocksR.sh http://imgur.com/AIZh29o   四、輸入指令:啟動安裝並將過程寫入至 log ./shadowsocksR.sh 2>&1 | tee shadowsocksR.log 上述執行後將會進入基本設定項目詢問,請按照個人需求輸入密碼及 預備使用的連接 Port,最後按下任意鍵開始安裝。 http://imgur.com/20WwRh8   五、安裝完成後,畫面會顯示伺服器的相關預設的設定參數。 http://imgur.com/yld4n2b   #修改設定檔及相關控制 一、控制命令: 1. 啟動服務:/etc/init.d/shadowsocks start 2. 停止服務:/etc/init.d/shadowsocks stop 3. 重啟服務:/etc/init.d/shadowsocks restart 4. 服務狀態:/etc/init.d/shadowsocks status   二、相關文件路徑(可用 ls 來列舉,或用 cat 來查看文件內容) 1. 設定檔:/etc/shadowsocks.json 2. Log 檔:/var/log/shadowsocks.log 3. 安裝目錄:/usr/local/shadowsocks   三、修改設定檔 1. 輸入指令:(請使用個人慣用的編輯器,如 vi, vim 等) nano /etc/shadowsocks.json 2. 依據 Shadowsocks-Rss 作者所提供的參數文件,修改設定檔為 可供多人連線使用的方式,區分不同 Port 及密碼,但採用相同 的加密方式及混淆模式。 http://imgur.com/jlGEBNA 3. 修改完成後,使用 ctrl + x 儲存檔案,並使用指令: /etc/init.d/shadowsocks restart 重啟服務即可。 補充: 若設定檔預備採用以路由器修改第三方韌體來搭配的話,在   obfs 混淆設定部分,可以修改為「tls1.2_ticket_auth」,目前   第三方韌體如 koolshare 所發佈的內容而言,其內建的 Shadowsocks   Client 可以開啟 SSR 支援並且以上述的混淆機制。 總之,obfs 這個選項的設定端看個人所使用的 Client 端可   支援到哪些內容而定。   四、Client 端設定 1. 請自原作者 github 下載 Windows 的 Client 程式。 https://github.com/breakwa11/shadowsocks-csharp/releases 2. 解壓縮後選擇 .Net 2.0 版本或 .Net 4.0 版本(個人使用 4.0) 3. 依據個人於伺服器端所設定之內容進行設定,請注意以下項目: .服務器 IP:需為真實的外部 IP。 .密碼及端口:依據設定檔所分配的 port 及密碼。   .加密:此處需與設定檔的 method 相同。 .協議:此處需與設定檔的 protocol 相同。 .混淆:此處需與設定檔的 obfs 相同。 http://imgur.com/xiPeahD 4. 設定完成後,右鍵點選 SSR 的圖示,選擇「啟用系統代理」即可。 若設定上無誤,則應當可正常開始進行代理連線,建議可更新 PAC 為 GFWList 或者繞過大陸常見域名。 另則是系統代理模式可選擇以 PAC 或全局,PAC 方式會按照該文件 列舉需代理的網址或者 IP 進行,全局則全部走代理。   #相關參考資料 Shadowsocks-Rss Github:breakwa11 https://github.com/breakwa11/shadowsocks-rss Shadowsocks-Rss 配置文件說明 https://github.com/breakwa11/shadowsocks-rss/wiki/config.json Shadowsocks 非官方網站:ShadowsocksR 一件安裝腳本 https://shadowsocks.be/9.html Ubuntu 安裝:(可能會有人需要?) http://goo.gl/0K13sl Ubuntu 安裝流程: http://goo.gl/vpraiQ Shadowsocks-Libev Github https://github.com/shadowsocks/shadowsocks-libev   #結語 本文僅能以較為簡潔的方式進行步驟說明,然而架設的過程中,很可能   會遇到各種不同的問題,例如選用 CentOS 並更改了預設 Port 可能需另外   調整 iptables,在 Ubuntu 安裝完成後可能要先在桌面環境下啟動終端機   來安裝 SSH,甚至會因 VPS 選用的不同而產生差異。 因無法一一詳述,小弟深感抱歉,同時在選擇 SS 的安裝版本上,雖然   SSR 因為 GPL 的緣故有點爭議,個人依然慣用與支持 SS-libev with OTA ,但確實在翻牆上頗為好用,且安裝上不是很困難,故推薦採用此版本。 而本文的產生主要因小弟過去曾提供少數板友 SS 的服務,然將近一年   下來實際上有在使用的人數並不多,故藉此機會關閉舊的伺服器重新架設,   但要通知每個 User 就有點困難,故稍早向 IceMakers 板主詢問是否能借用   版面後告知板友後,便決定開完會一邊架一邊寫,順帶文末跟有使用小弟提   供的 SS 的板友告知一聲:「不好意思啊,舊的要打掉重練啦。」 若有板友在架設過程或有其他問題,歡迎站內信或微信聯繫(neriak) 以上,謝謝各位。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.130.217.83 ※ 文章網址: https://www.ptt.cc/bbs/WorkinChina/M.1472545423.A.D33.html 推 shiwy: 超有心詳盡說明 08/30 17:13 推 bear: 先推再看,最近也需要研究架ss,感謝分享 08/30 18:36 推 Hyacinth0: 推 08/30 23:17 推 wicer5566: 推 08/31 08:35 推 mozume: 推,太有用了 08/31 09:30 推 toco0517: 近日研究寶可夢分IP~哈~拿來用 08/31 09:45 ※ 編輯: Pally (220.130.217.83), 08/31/2016 11:23:02 推 AriaYang: 同事用了這個臉書被盜. 安全性有疑慮 請謹慎使用 08/31 11:28 → AriaYang: https://zh.wikipedia.org/wiki/Shadowsocks 08/31 11:28 → AriaYang: 可參閱維基裡關於shadowsock的安全性介紹 08/31 11:29 → scotthsiung: 先推善心,樓上同事用免費被盜還是被裝木馬? 08/31 12:43 There's no such thing as security. AriaYang 大大指出了小弟在撰寫文章所疏忽的重點:「安全性」,   Shadowsocks(簡稱 SS)的出現莫過於為了突破 GFW 的限制與不便性,   透過 Client 與 Server 之間利用 Socks5 協定並將彼此之間的封包傳   輸利用兩端點協定的加密方式進行傳遞。 然而這最終的作用僅在於「干擾與混淆 GFW 的攔截判斷機制」,目   的僅是為了能越過那阻礙重重的高牆罷了,然而對於所謂的安全性,我想   應該沒人能斷言與保證。 也因如此,小弟之所以選擇利用自己手邊的設備資源自行架設伺服器   ,其實僅僅是安慰自己這樣可以不花錢,勉勉強強能用就可以了,至於   SS 的安全性議題,只能說在 Client 與 Server 端之間的封包傳遞是稍微   可信賴的,但終究沒有所謂的「絕對安全」。 就小弟個人的淺見,對於個人帳號的保護,目前像是 Google、Facebook   或 Microsoft 的帳號安全性都能透過 Google Authenicator 這個 App 來進   行進階代碼驗證,另一方面開啟未知位置登入通知也是一種手段吧。 當然,沒有什麼東西是安全的,謹慎為上。