GoAgentX 的 後續 維護及使用

最近 Shadowsocks 作者 clowwindy 被喝茶然後清空了他的整個項目代碼。一周後goagent也悄悄清空了所有的項目代碼。Github又一次受到大規模DDOS攻擊。

是時候使用 PAC 白名單了一文當中我給大家介紹了一個反gfwlist道而行的白名單PAC,它不同於前者對GFWed域名做匹配,而是對未GFWed的域名匹配……好吧,我個人也很贊同作者的想法——如今使用白名單才是趨勢。

總之,對於想要使用自定義PAC的人來說,一個一體化設置的工具是必不可少的——畢竟,我們還是習慣圖形化的操作界面。

悄然消失的GoAgentX

在我們被近期的一系列“大事件”鬧的人心惶惶的時候,OS X 下簡單又好用的 GoAgentX 卻早就悄然消失在了人海之中。我手裡的版本是 2.3.7 ,可能這就是它的最後一個版本吧——我沒有找到更新的版本。

它的官網已經打不開,而 Github 中的項目代碼也早就被清空了。不過值得欣慰的是,這個最後的版本目前即使實在 10.11 上也跑的不錯——唯一的缺點可能就是打開的時候防火牆會提示聯網(可能簽名過期了吧)。

防火牆聯網提示

防火牆聯網提示

繼續使用

不過,如果你不使用 OS X 自帶的防火牆的話,那你就不需要面對這個對話框了——我推薦你打開它。

GoAgentX 支持好幾種代理的服務,可以智能開啟和切換(如果端口相同則切換)服務,而且這些服務都是以插件的形式來加入的——這意味著我們仍舊可以給GoAgentX裡使用的服務進行升級。所以,在主程序完全不能使用之前,我們仍舊可以繼續使用它而不用擔心過時。

以插件形式存在的服務

以插件形式存在的服務

PAC 的配置

關於PAC的配置這裡不再贅述,我們使用 GoAgentX 就是為了用那個白名單,不然使用 ShadowsocksX 豈不更加酸爽。所以,請參考 是時候使用 PAC 白名單了


 

更新服務

GoAgentX 已經沒有人維護了,所以更新按鈕再也不能用了,我們無法升級主程序,但可以手動升級插件。你只需要訪問 /應用/GoAgentX.應用/內容/插件 就可以看到插件了。我們同樣用鼠標點擊右鍵來“顯示包內容”。

更新2.6.8

雖然我們前文說了 SS 的項目文件已經被清空,但無論如何,這是個開源項目,所以……

GoAgentX 為了方便吧可能,默認用的並不是 SS 主項目,而是一個延伸項目 2.6.8-libev (實際上在插件的目錄裡面有三個版本的 SS,你可以在高級配置裡任意切換,這裡我們只使用還在更新維護的 ss-libev)所以,我們還是可以對其進行更新的。在 GoAgentX 上它的版本號還是2.3,而實際上這個卻是 SS 的主版本號……?

考慮到編譯是一件很麻煩的事情,我們選擇從 家釀 裡提取, 釀造 是 OS X 裡類似 Linux 中的 apt-get的 或者 百勝 的包管理系統,如果你不知道它是什麼,——來這裡看看。

我們使用如下命令來安裝 釀造

注意

要安裝 brew,你得先安裝 Xcode。——就算你選擇下載源碼進行編譯,也得需要 Xcode。

使用命令 釀造 安裝 2.6.8-libev 來安裝它,然後就可以去 /USR/本地/地窖/2.6.8-libev/2.3.0/箱子 下把 ss-local 拷貝出來替換掉 /應用/GoAgentX.應用/內容/插件/2.6.8.gxbundle/內容/資源/箱子/libev/SS-本地 啦!

另一個更新的辦法

這裡,感謝 xsharp 同學,他為我們更新 SS 客戶端提供了新的思路,由於 SS-libev 版本其實已經安裝到了你的系統當中,我們也可以讓 G oAgentX 直接使用系統中安裝的 SS 而不是它插件裡的 SS ,這樣連上邊複雜的替換也省了:

找到 /應用/GoAgentX.應用/內容/插件/2.6.8.gxbundle/內容/資源/箱子/libev/SS-本地 ,把它刪掉,然後使用如下命令創建一個空文檔:

編輯這個文檔,寫入如下代碼:

然後使用 CHMOD +X /應用/GoAgentX.應用/內容/插件/2.6.8.gxbundle/內容/資源/箱子/libev/SS-本地 來給它加上可執行權限。

這樣的話,gx就會調用系統的 SS 而不是自帶的插件裡的 SS了。以後更新,也不需要重複去拷貝文件了。

另外,如果你想要其他新的性能參數比如 一次性驗證,那麼就這樣寫:

收尾工作

為了讓 GoAgentX 插件頁面也能顯示出正確的版本號(你要是不 care 這些細節,就可以不看這裡了),我們修改如下文件:

在裡邊找到版本號字符串,修改為對應的最新版本即可:

這次是lbev的版本哦

這次是lbev的版本哦

更新COW

我們來更新 cow,cow 也是一個開源項目,它能自動根據你的訪問來判斷網站是否被牆,如果被牆,則自動使用二級代理來訪問,久而久之,cow 會根據你的瀏覽行為學習到各種被牆的網站,就好像自動生成的 gfwlist。以下是作者寫的介紹:

COW 是一個簡化穿牆的 HTTP 代理服務器。它能自動檢測被牆網站,僅對這些網站使用二級代理。

我個人不推薦你在公共場合使用 cow,這一點我會再說。不過,對於要在 GoAgentX中使用 COW 的人來說(GoAgentX裡真的很方便!)跟新下 COW 還是很有必要的。

首先,我們使用 捲曲 -大號 混帳./ | 慶典 來下載最新版本的 COW,對於 安裝 二進制 哪一個 目錄 這個問題,我們直接按回車保存它到當前目錄;對於 開始 登錄? (如果 , 下載 一個 plist中 文件 ~/Library。/LaunchAgents) [/ñ] 這個問題要留意,我們目的在於提取cow程序文件,而不是直接安​​裝,所以要輸入 ñ來取消自動啟動。

這時你的目錄下(默認應該是 /~ )就有了 cow 的程序文件:

cow文件

cow文件

我們去 GoAgentX 的插件目錄裡(進入方法見上文),找到 COWService.gxbundle,用鼠標點擊右鍵來“顯示包內容”,具體的路徑如下:

我們把此 cow 替換為彼 cow 即可。

收尾工作

為了讓 GoAgentX 插件頁面也能顯示出正確的版本號,我們修改如下文件:

在裡邊找到版本號字符串,修改為對應的最新版本即可:

修改插件版本號

修改插件版本號

找不到 cow 版本?

更新 GoAgent

Goagent 這個博主不用,so…………新版變化挺大的,懶得搞了,給大家推薦個替代的XX網

  • 集成 GoAgent、GoGoTest 等自動掃描 IP,省事省力
  • Web 界面,人性化交互,傻瓜易用
  • 內置了公共 appid, 方便新手
  • 方便易用的細節、細節提示

更新Stunnel的

Stunnel 也是一個非常不錯的代理選項,GoAgentX 裡附帶的版本為 4.56,而最新的版本已經 5.22,我們在使用它之前也有必要來對它進行一下升級。

去官網下載最新版來編譯是個不錯的選項,不過過於麻煩,我們選擇從 Homebrew 裡提取。使用 釀造 安裝 安全通道 來安裝 stunnel,這樣安裝完整之後就可以在 /USR/本地/地窖/安全通道/5.22/箱子 中找到 stunnel 的程序文件了!

我們把它複製到 /應用/GoAgentX.應用/內容/插件/StunnelService.gxbundle/內容/資源/箱子/ 即可。

收尾工作

同樣編輯對於的 /應用/GoAgentX.應用/內容/插件/StunnelService.gxbundle/內容/信息.plist中 文件來修改它的版本號:

修改插件版本號

修改插件版本號

 

本文由 落格博客 原創撰寫:落格博客 » GoAgentX 的 後續 維護及使用

轉載請保留出處和原文鏈接:https://www.logcg.com/archives/1296.html

關於作者

R0uter

如非聲明,本人所著文章均為原創手打,轉載請註明本頁面鏈接和我的名字。

註釋

  1. 請問brew install shadowsocks-libev時報錯:需要安裝prerequisite,安裝到xz時提示cannot run C compiled programs,這個問題有解決辦法嗎?

          1. 真的哭了。。。sierra裡GAX的SS不能用,別人說更新一下里面的SS插件就能用。。。結果只能滾回去shadowsocksX了。。。

  2. 直接修改app裡面的內容,肯定是會破壞證書的,自然會一直提示聯網……
    求一個2.3.7的源代碼,我在網上貌似找不到,都是老版本的,感謝
    郵箱:
    NDA4NDg3ODMzQHFxLmNvbQ ==

    1. 2.3.7我也沒有源碼,只有一個編譯好的文件。這個文件本身就證書失效,一直提示聯網,我用自己的證書重新給簽名也不行。能不用還是不用了吧,goagentX網上沒有最新的源碼,它真的要離去了。現在我用surge mac,如果你用的話我可以把我的配置文件發你一份。 :)

      1. 謝謝~
        你可以用
        “協同設計-v /Applications/GoAgentX.app’
        來檢查一下原本的簽名是否被破壞,如果沒有問題則直接返回。

        “協同設計-dvvvv /Applications/GoAgentX.app’
        來檢查當前的簽名信息,我的版本打開不會出現聯網提示,一般出現這個提示很大可能就是bundle被(惡意?)修改了。

        我有surge mac,但是它沒有ssh 代理,這個代理可以利用公司公網ssh搭梯子進公司內網,vnc自己的電腦什麼的很方便。對我來說goagentx確實是無可替代的。

        1. 是的,沒有任何問題,可能我這個版本就是個測試版,因為網上現在也找不到這個版本了。ssh的化可以直接用命令或者腳本啊~我不用那個命令,因為用來翻牆的話會被檢測出來然後屏蔽的。我用ssh都是直接命令行配置:) surge專門用來翻牆。而且,我還專門為此維護(其實現在是藉鑑前輩的列表了)了一個翻牆白名單規則,十分好用哈哈。

          1. 因為我們公司有很多內部web服務,所以用ssh轉socks 代理就可以直接用瀏覽器打開咯,而且在命令行用proxychains4g可以直接從內部git pull出來,而不用先git clone到中間服務器再scp出來,省了不少時間,其實都是個人需求吧。

            我的白名單是從這裡pull的:
            https://github.com/breakwa11/gfw_whitelist
            每天schedule git pull 可以實現自動更新,如果有自己定義的網站話可以加入自動shell腳本merge 一下,不用自己維護。

            話說你的博客真不賴,作為一個不會html的開發者覺得太酷了。

          2. 那你可以看看我的白名單https://github.com/R0uter/gfw_domain_whitelist 我這個博客用Wordpress搭建的,我也不會,頂多安裝一些插件優化一下,倒是後台做了不少優化,哈哈。
            如果我是你,我就直接vpn了……嘿嘿。簡單又省事。

          3. XD 果醬果醬,我也是按照大神的結果改改格式罷了。我本來自己寫了一個爬蟲的,但由於已經有前人了我就取消了那個爬蟲項目轉而使用了大神這個,列表已經很全面啦。現在的問題就是怎麼找到方法來根據網站的流行程度縮減列表體積。

          4. 負載均衡的點子不錯,但是會降低可用性,連不上的機率大大增加……可以想想怎麼提高可用性,要是能週期性自動測試代理列表並選出丟包率最小的作為默認pac就好了。

          5. 確實,當時給破娃醬提交的時候她也這麼說的,尤其是幾條線路速度不一樣的時候,用起來會非常的……2.可惜我JavaScript並不厲害,我考慮考慮將來繼續探索。其實現在我自己並不用這個PAC,只是用了白名單列表,之前用的時候後來也把負載均衡給關了用的嘿嘿。等有空了我試試看。

        1. 是的呢……好在現在用leve4可以代替——哦,可能還得等幾個月吧才能支持ss。如果過段時間它不支持,我會考慮自己寫一個管理器,畢竟我也在用這個的:)

  3. 如果要 ss-local 支持 OTA (-一個), 有和思路?新建一個名為 ss-local 的 shell 文件? 在該 shell 中加上 -A 參數,然後其他參數都轉發到原始的 ss-local。像這樣:
    #!/斌/慶典
    SS-本地$ @ -A

        1. 哈哈,你這個方法竟然能夠被GoAgentX關閉,不過就直接調用了系統安裝的SS客戶端而不是gx插件裡的了……也好,這樣省得每次升級都要拷貝一遍啦!
          ——看起來我的服務商都沒有支持一次性驗證呢。

    1. =。=好吧,高級功能不能使用模板來做,我用swift寫了一個殼,理論上能支持所有參數了,缺點是必須手動關閉。我猜你的ss服務器是自己搭建的?我測試了下我的服務商都沒有支持這個功能呢=。=|||總之,還是那句話“畢竟是能用的。“......

    1. 我去研究了下,很遺憾,雖然meow天生完全支持cow,但唯一一點遺憾的是meow的配置文件目錄改名為 .了,而gx配置cow的目錄是 .,所以……我們沒辦法了。

    2. 如果非要配合 MEOW 的話,其實可以直接做為 MEOW 的二級代理,例如起一個 3proxy 服務,然後配置文件寫死成 MEOW 的 IP 和端口。只是沒什麼意義,因為 Surge 以及類似的開源工具,同樣可以做 MEOW 的二級代理,而且效果更好,並且要么商業化了要么開源,應該大部分情況下都能替代不再維護的 GoAgentX 了。

    3. 剛看到 xsharp 的方法,完全可以用在 MEOW 上,直接把COW的Bundle裡寫個映射到 MEOW 的 shell 腳本,再 ln -s .cow .meow 即可,親測有效

  4. 還得先安裝Xcode?話說沒編譯好的能直接替換的麼? mac文件瀏覽器各種蛋疼,喬布斯當初就沒想讓用戶直接操作文件,ios更是極端

    1. 沒編譯的程序當然就不能用啦,不過你可以嘗試python版本,這樣你得在配置里切換一下才行。你試試:)
      或者,你也可以考慮去找找預先編譯好的~

    1. 目前我沒有遇到這個問題,可能是我更新後就沒有繼續使用cow吧……現在我去配置試試看,我的是0.9.6,如果重現問題,我會回來告訴你的:)

    2. 哈哈哈~~我沒遇到這個問題,cow的自動探測我不喜歡,但是它的hash負載均衡很給力啊!我開了三個線路然後負載均衡,從此打開網頁都是搜搜的。抓了下包,打開Twitter同時好走倆個線路,真是完美!

        1. 你是不是在配置裡把cow給禁用了所以看不到?我現在又用回了cow配合自己手動寫的列表……但還是不太好使,有時候cow還是會把黑名單的域名給直連,唉。

發表評論

您的電子郵件地址不會被公開. 必填字段標 *