[爆卦]自架proxy是什麼?優點缺點精華區懶人包

為什麼這篇自架proxy鄉民發文收入到精華區:因為在自架proxy這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者takahashikag (奥様は正妻空母)看板KanColle標題[攻略] 架設屬於自己的 P...



這邊來作示範的是 Shadowsocks 這套代理程式,而在文章的開頭,謹此向 Shadowsocks
唯一的開發者 clowwindy 致敬,撰寫了這套基於 Socks5 協議撰寫的代理伺服器程式

==
其實去年就寫好這篇文章了,但當初有質疑 Shadowsocks 的穩定度,但經過半年的實際測
試,也在泰國跟大陸當地試驗過了,確認 Shadowsocks 搭配自定義 PAC 可以應付中度甚
至重度的連線至日本需求,剛好 NicoNico 又把海外付費用戶當棒槌玩地圖砲鎖國了,有
鑑於養一台一個月大概九百羊(不含稅)的個人 Proxy 伺服器好處多多,因此特此分享

我有寫網頁版,但是分成兩篇,這篇會整合成一篇,想看網頁版的可以選擇:
http://takahashi65.blogspot.tw/2015/08/conoha--shadowsocks.html
http://takahashi65.blogspot.tw/2015/09/shadowsocksrule.html

==
之前介紹過在 VPS 主機上運行 PPTP 協議的 VPN 或是 OpenVPN-Access Server 之後,這
次來介紹 Shadowsocks 這套基於 Socks5 協議撰寫的代理伺服器程式,其實 OpenVPN-AS
搭配大頻寬 VPS 後已經堪用,但是 Shadowsocks 還是有它吸引人的地方,以下列舉

十分的省電
Shadowsocks 與其他 VPN( Virtual Private Network,虛擬個人網路)協議相比之下十
分的傑出,電量的消耗極低,這點在行動裝置上更加明顯(因為他是 Proxy 非 VPN

支持自動連線與自訂路由表
在網路不穩的環境下可以十分流暢的切換,而自訂路由表則能夠針對個別使用者的環境做
網路導向(也就是說可以節省 VPS 的流量

可自行架設 Shadowsocks 伺服端
當然有基礎的 Linux 常識下自行架設 PPTP、IPSec、L2TP 甚至 OpenVPN 都可以實作,
但是 Shadowsocks 的伺服端不需要很高的硬體需求,一般來說 512MB 的記憶體與 10GB
的儲存環境下搭配 Ubuntu 就可以穩定的運作

傑出的隱蔽性
Shadowsocks 可以使用 AES ( Advanced Encryption Standard,高階加密標準)搭配自
訂密碼來加密整個傳輸過程,也就是說伺服端與使用者之間的傳輸過程無法被讀取其內容
,基本上旁道攻擊之外的方法是無法探知傳輸內容的,也就是說除非伺服端或使用者被入
侵,否則傳輸過程是安全而隱密的,而惡名昭彰的防火長城即使可以利用 IDS ( Intrusion-
detection system,入侵檢測系統)來探查 ,因為缺少明顯的連線特徵與高度加密性,防
火長城並不能知道 Shadowsocks 正在進行加密傳輸,當然透過發覺大流量的、特定傳輸埠號的 SSH 連線還是可以封鎖單一網
路位址的連線,但並無法探查、解析 Shadowsocks 的傳輸,更遑論 DMM 或是其他廠商有
能力知道你非日本地區用戶

然而請注意,Shadowsocks 僅僅是使用加密與模糊化的、基於第五版 Socks 協議所撰寫的
Proxy Server(代理伺服器程式),並非 VPN 協議建立加密的私人通道,它僅僅是一個
與 SSH Tunnel 有血緣關係的代理伺服器而已,與 VPN 協議有差異

==
再來開始實際安裝,雖然說 Shadowsocks 的開發者 clowwindy 在被有關當局施壓後已經
刪除了 Github 上所有的 Shadowsocks 程式碼,但 Github 上還是有跟山一樣高的自動安
裝資源跟備份,直接導入系統後就可以一路按「Y」到底了,當然也可以自己弄一些額外的
設定就是了,這邊一樣以 ConoHa 這家 VPS 為實作例子

https://farm6.staticflickr.com/5746/20977162871_1a7e5b4fed_b.jpg
首先也是弄一台運作 Ubuntu 14.04 LTS 系統的單位出來,fail2ban 記得裝一下,不然裸
奔的 VPS 幾乎立刻會被駭客惡意爆破,安裝方法可以參照這篇:
https://www.ptt.cc/bbs/KanColle/M.1434209453.A.E63.html

https://farm1.staticflickr.com/684/20943445116_6435395c1b_b.jpg
接著引用 Github 上的來源碼,這個自動安裝腳本字串很長,請照著去打

https://farm1.staticflickr.com/714/20348644703_e93b93224f_b.jpg
沒意外的話就會從 Github 上下載打包好的檔案下來

https://farm6.staticflickr.com/5820/20781654460_28a3a03147_b.jpg
接著是 chmod +x shadowsocks.sh
./shadowsocks.sh 2>&1 | tee shadowsocks.log 安裝

https://farm1.staticflickr.com/635/20977159901_de4fb07f34_b.jpg
接著會要你設定密碼,不建議用預設的密碼,畢竟小心駛得萬年船

https://farm1.staticflickr.com/578/20347110284_8c91da5e14_b.jpg
設定與使用者端的傳輸埠,預設值是沒問題的,除非被擋或是佔用了不然沒必要更改

https://farm6.staticflickr.com/5749/20969706555_2a8a61367b_b.jpg
到這裡設定就已經完成了

https://farm1.staticflickr.com/732/20959885702_32ec6cd7d4_b.jpg
完成設定後會跑出檢視畫面,當然這是針對單一使用者的配置

https://farm1.staticflickr.com/579/20781755168_65b75cfe30_b.jpg
使用 vim /etc/shadowsocks.json 來編輯設定,對多重使用者做設定,前篇也教過 vim
編輯器的用法了,這邊簡述 vim 編輯器的指令
a 是進入編輯模式
Esc 離開編輯模式到上層,在上層 :w 是存檔、:wq 是存檔後離開、:q 是直接離開不存檔

https://farm6.staticflickr.com/5821/20959885672_8d710518ee_b.jpg
多重使用者作設定,可針對不同的使用者設定密碼跟個別的傳輸埠,只要依照
"使用者傳輸埠":"使用者密碼", 去撰寫

https://farm1.staticflickr.com/693/20969706155_0518118ba5_b.jpg
在完成使用者設定後,伺服端的處理都完成了,重新啟動 Shadowsocks 服務後就可以了(
最快的方式是用 Reboot 指令重開伺服器),以台北地區的 vDSL 服務作測試,理論頻寬
100M/40M,國內直接連線到伺服器延遲約 27 微秒

https://farm1.staticflickr.com/733/21187498618_faecfcb88b_b.jpg
附圖是使用 Shadowsocks-win 客戶端軟體,使用者端軟體基本上填入你的伺服端網路位址
、傳輸埠號與密碼就可以了

再來是客製化,自行去調整 Shadowsocks 的路由規則,將 DMM 與 NicoNicoVideo 等導向
Shadowsocks 伺服器自作轉送,應用 Shadowsocks 的部分代理模式,在連線速度與頻寬中
取得平衡點

許多的 VPS 廠商針對不同的方案有設置不同的流量限制,而 ConoHa 雖然與限定日本地區
購買而有諸多購買限制的櫻花 VPS 一般號稱沒有流量限制,但是會針對巨量傳輸的用戶採
取暫時性限速的措施來確保同一數據中心、骨幹路線上其他用戶的權利 ... 也就是說一旦
踩線,就準備體驗比中華電信的寬頻 ADSL 方案中最低規格還要低的連線速度

而藉由設置部分代理模式,可以將特定的流量才導引位在日本的到 Shadowsocks 伺服端去
傳輸,在 Shadowsocks 的客戶端裡面有兩種代理模式,分別是全局代理跟部分代理,而依
照客戶端軟體的不同,有不同的名稱跟縮寫

https://farm6.staticflickr.com/5643/21271615025_b9700b691a_b.jpg
在 OS X 適用的 ShadowsocksX 中,分為 Global Mode 與 Auto Proxy Mode

https://farm6.staticflickr.com/5790/21349116236_2eeaa37f81_b.jpg
而 Windows 適用的 Shadowsocks-win 的簡體中文介面中,則分為 全局模式 與 PAC 模式

全局代理意思就是所有的流量都經過 Shadowsocks 客戶端後往伺服端傳送
而部分代理是符合規則的流量才走上述的連線方式

https://farm6.staticflickr.com/5665/21349115406_d6e18607e4_b.jpg
在 Windows 適用的 Shadowsocks-win 中點選『適用本地 PAC 文件」後,藉由「編輯本地
PAC 文件」可以調整規則

https://farm1.staticflickr.com/574/21187499258_dbd23cb088_b.jpg
PAC 文件會放在跟程式同一目錄下,檔名 pac.txt 的文字文件

https://farm2.staticflickr.com/1497/25490736312_906b527cb1_b.jpg
pac.txt 打開大概就是這樣,這是經過我調整後的樣子

https://farm1.staticflickr.com/589/20650462023_74fa55a08c_b.jpg
在 OS X 適用的 ShadowsocksX 中,PAC 文件會放在隱藏目錄下,
檔名 gfwlist.js 的 json 檔案,這是原始狀態

https://farm6.staticflickr.com/5738/20650461483_6358f0e0d9_b.jpg
初步修改後,可以看到我加上了測速網站的網址

https://farm6.staticflickr.com/5810/20648905104_9118f3a242_b.jpg
則流量就會由原先走 HiNet 國內路線
https://farm1.staticflickr.com/680/21271614765_6369955eaa_b.jpg
導向到架設 Shadowsocks 伺服端的日本 VPS 廠商的網路出口

照理說透過編寫檔名 user-rule 的檔案,再更新本地 PAC 的話是可以達成一樣的效果,
但由於 Shadowsocks 初衷是協助大陸地區做翻牆,所以預設的規則中會有很多我們台灣使
用者沒必要繞道的網站也經由 Shadowsocks 導向,因此直接對 PAC 文件動手,刪除上千
行來自 GFWList 的預設路由規則,撰寫適用於自己的路由規則,另外撰寫成功後請不要按
下「從 GFWList 更新本地 PAC 文件」,雖然你撰寫的路由規則還是會生效,但 GFWList
的預設路由規則又回來了

而 GFWList 與 PAC 都是依照 Adblock Plus 的過濾規則去撰寫路由判定的,有興趣可以
參考 Adblock Plus filters explained 來進一步了解,只想上 NicoNico 跟玩艦娘的可
以直接用我寫的 PAC 文件

gfwlist.js
https://mega.nz/#!6McDgK4Z!kicRJJQpd_8DD7bm4z1UIM51eSu4UJC4VxqurDW8WpE
pac.txt
https://mega.nz/#!uQdhgQSA!Fy2cR1PU714cYjpsVsRjidHkC4Sk7Mdvv3aIhLL2Dho

再來是比較麻煩的部分,艦娘採取限定日本地區遊玩的策略,因此使用 Proxy 或是 VPN
來遊玩是海外玩家的解決方案,而在 OS X 適用的 ShadowsocksX 中規範了瀏覽器適用的
路由規則,因此以在將 DMM 相關的網址加入 PAC 後,不論是直接使用瀏覽器遊玩或是使
用「艦娘は今日も元気です。」都可以正常遊玩(理論上

而在 Windows 環境中稍微麻煩一點,直接使用瀏覽器遊玩當然沒話說,但透過「提督業も
忙しい!」的話,建議特別設定一下 Proxy 規則,而「七四式電子観測儀」在將 DMM 相
關的網址加入 PAC 後就沒問題了

https://farm2.staticflickr.com/1572/25241812679_42c4494cc3_b.jpg
OS X 上修改完成的 gfwlist.js,可以看到 DMM 相關網域與艦娘的遊戲網址也在其中,這
是較穩定的設置,摸索了一段時間,比用 DMM 相關網域地圖砲或是抓伺服器 IP 加入 PAC
都還要穩定

https://farm1.staticflickr.com/733/21187498618_faecfcb88b_b.jpg
而在 Windows 上需要查一下 Shadowsocks 客戶端的代理傳輸埠,通常是 1080,被佔用的
情況下會要你更改代理傳輸埠

https://farm1.staticflickr.com/723/20754277983_71d74bea08_b.jpg
使用「提督業も忙しい!」的話,到「プロキシサーバーを指定する」後
Host 填入 127.0.0.1,傳輸埠則是剛剛的代理傳輸埠號

https://farm6.staticflickr.com/5644/21084711249_3f841fdf16_b.jpg
沒意外的話,在清除快取與餅乾,重開「提督業も忙しい!」後就可以正常遊玩了


--
為什麼你會這麼熟練啊!你和親王親過多少次了啊!?你到底要把我甩開多遠你才甘心啊

是我,是我先,明明都是我先來的.…接吻也好,擁抱也好,還是喜歡上提督那傢伙也好

https://i.imgur.com/PniDjbn.png
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.46.96.167
※ 文章網址: https://www.ptt.cc/bbs/KanColle/M.1459701257.A.0C8.html
shizao: 雖然看不是很懂但好像不錯的樣子 04/04 00:37
UshioKai: 簽名檔(′;ω;‵) 04/04 00:37
kira925: 其實NICO剛剛修好了 04/04 00:39
sawakoWU: 雖然不是很懂但還是推一下好了 04/04 00:40
david011063: 先推 04/04 00:41
kslxd: 快推 要不然人家以為我看不懂 04/04 00:41
a951l753vin: 看完這篇我對大陸翻牆有著更佩服的精神 04/04 00:44
momiji09: 簽名檔大崩潰Orz 04/04 00:45
melzard: 簽名檔是啥? 04/04 00:48
weiyilan: 不明覺厲 04/04 00:49
vul3nj04: 簽名檔...WA2梗? 04/04 00:49
Noxves: 快推 不然會被說看不懂 04/04 00:54
jeff666: 簽名檔 QQ 04/04 00:56
ckz: 簽名檔...XD 小麥麻理 Z1小春 Z3千晶 COS希望 (敲碗 04/04 00:59
tseng1978: 簽名檔看不懂 中間List 那裡 大陸真的太辛苦了... 04/04 01:03
proofmax1: 專業 推! 04/04 01:07
narukaho: 推 但nico還沒修好吧 04/04 01:16
md01yo30: illust_id=54315363 簽名檔的P站id 04/04 01:21
weiyilan: NICO掛種花自己的proxy可以順跑,但是你知道的 04/04 01:27
等 HiNet Proxy Server 負載滿了就會爆炸了ww

FSVDFS: 我叫我家明石跟你學好了= = 04/04 01:28
aztar: 這麼專業的文章發在這感覺浪費了 04/04 01:34
Sechslee: 看不懂只能推了 04/04 01:53
shintrain: 有沒有懶人包……… 04/04 01:58
shintrain: 這篇大動作的用意是……… 請縮成30字心得QQ 04/04 01:59
louis210000: 專業!可是我看不懂www 04/04 02:04
Verniy: 白學 睡醒研究 04/04 02:20
dodo1018: 簽名檔那張看了就覺得好眼熟...原來是white album啊... 04/04 02:59
nodefence: 我要胃痛啦 04/04 03:49
uqIa: 簽名檔強行白學ww 04/04 07:57
symphoeuni: 推專業 有空再弄QAQ. 對了 和紗我的 04/04 08:42
neo730228: 我居然看懂了 0.0 對了 東馬小三!!! 04/04 09:02
我即使是死了,釘在棺材裡了,也要在墓裡,用這腐朽的聲帶喊出:雪菜碧池!

asd823: 不過最麻煩的還是要弄日本ip,vps超貴的,買vpn 用sock 導 04/04 10:26
asd823: 向又很怪 04/04 10:26
自己租 VPS 架主要是個人隱私跟穩定度都有一定的保障,我是同一台上面有裝 OAS 跟
Shadowsocks,OAS 給 iOS 裝置用,Shadowsocks 給 OS X 跟 Windows,多建立幾個使
用者帳號就可以跟朋友分租了

gox1117: (′;ω;‵)簽名檔是WA2 04/04 11:25
TohmaMiyuki: 簽名檔wwwwwwwwwwwwwwwwwwwwwww 04/04 11:37
baka: 白學lol 04/04 11:39
Harusame: 我是自己弄日本VPS再灌成Windows www 有時還可以遠端用 04/04 12:08
Harusame: 另外就是順便弄nginx 04/04 12:09
架 Windows Server 後又要跑 VNC,說實在記憶體不多跑 WinServer 很吃力,所以用
Linux 反而比較穩,而且遠端桌面可以用 Chrome 遠端桌面,這樣就可以出門在外用行
動裝置刷艦娘,家裡的電腦開著執行 Shadowsocks 跟 Chrome 遠端桌面 即可
https://youtu.be/AmYIYJSZC0s
※ 編輯: takahashikag (114.46.96.167), 04/04/2016 13:20:07
asd823: 當時我有想過買付費vpn,或用google ce指定日本ip當出口, 04/04 14:17
asd823: 不過後者一個月要快10鎂,我就收手了 04/04 14:17
Harusame: 是沒錯啦 要穩點可能要考慮再+900了 不過考量到有時要把 04/04 15:06
Harusame: 一些本地弄的asp或php丟上去測比較方便 所以還是裝win 04/04 15:07
Harusame: http://i.imgur.com/K8VVqe8.png 跑IIS+nginx大概60% 04/04 15:08
Harusame: 畢竟自己目前管的N個Server都WinServer 這樣比較習慣XD 04/04 15:09
ptgeorge2: 玩個網頁遊戲玩成這樣艦娘也算創先河了,古早那些泥巴 04/04 15:30
ptgeorge2: 狂人不算的話 04/04 15:30
a951l753vin: android的chrome遠端桌面只有移動滑鼠去點擊 要teamv 04/04 17:28
a951l753vin: iew才有直接觸碰桌面位置的功能 04/04 17:28
shocaca: 樓上 Android的chrome遠端已經可以切換類比跟點選了 04/04 18:38
shocaca: 最新版連到遠端電腦畫面後 有個滑鼠圖案上方下滑出白條後 04/04 18:40
shocaca: 把滑鼠圖案點成手指就可以 04/04 18:40
shocaca: 啊 手機推文錯亂 總之可以切換就是了XD 04/04 18:41
vul3nj04: 耶? 但我現在看一下chrome遠端還是沒有shocaca大說的功 04/04 19:27
vul3nj04: 能啊,到Google Play看了一下也沒更新檔 04/04 19:27
a951l753vin: 可以拍照圖示讓我看一下嗎 沒看到... 04/04 20:33
a951l753vin: 會不會是平板才有的功能 我是安卓手機 04/04 20:36
vul3nj04: 我也是用手機試的,搞不好真的是平板才有? 04/04 20:37
shocaca: 我是用Z3有耶 我截一下圖 跟看一下版本號 04/04 22:03
shocaca: http://i.imgur.com/BJVmClR.png 版本號 04/04 22:11
shocaca: http://i.imgur.com/UVZ2QUD.png 舊的滑鼠類比模式 04/04 22:11
shocaca: http://i.imgur.com/JSylVAR.png 新的切換後點撃模式 04/04 22:12
shocaca: 我用Tablet Z裝了打開也有這可以切換選項 版本號一樣 04/04 22:15
a951l753vin: 怪了 我手機的google play只能搜尋到版本44的... 04/04 22:46
a951l753vin: 手機是M7 有更新到最新版 04/04 22:47
vul3nj04: 我也只能看到44開頭的~囧 04/04 22:48
shocaca: 你們ANDROID版本號是多少 我是5.1.2 04/04 22:54
shocaca: 難不成ANDROID有什麼先行配布之類的 這個我是不清楚啦XD 04/04 22:55
a951l753vin: M7最後更新就是5.0.2~~ 等HTC10發布就準備了吧XD 04/04 23:00
vul3nj04: 5.0.2 +1 04/04 23:08
shocaca: 那或許新版是先或只給比較新的安卓版本號吧 04/04 23:14
shocaca: 不然也可以直接試著去找49開頭的APK裝裝看 注意來源這樣 04/04 23:15
a951l753vin: 後來我有寫意見回饋給google 結果今天就可以更新到版 04/05 17:19
a951l753vin: 本49了 有寫有用!? 04/05 17:19
vul3nj04: 今天也突然發現更新了ww 04/06 23:03
ChocoBiscuit: 想請問IDCF 這家的VPS呢?最低只要500日圓 04/07 11:13
takahashikag: 沒用過欸,不過有電話認證的樣子,英文太差可能會卡 04/08 20:10
ChocoBiscuit: 好的 我再試看看 謝謝~ 04/11 09:16

你可能也想看看

搜尋相關網站