Ubuntu 安裝配置代理(Linux for clash + proxychains)
寫在前面
- 這兩天要裝 FSL 軟體發現第一步不掛代理是真的慢,所以決定研究一下怎麼在 Linux 上掛代理
- 簡單搜尋後選擇使用
Linux for clash
和proxychains
解決代理問題 - 網上的教程很多但我試過之後大多會出現一些細節問題,而且千篇一律
- 所以整理一下掛代理的安裝配置流程和細節
- 順嘴提一句
clash
是真的好用
配置環境
- 虛擬機器:
VMware workstation pro 16
- 虛擬機器作業系統:
ubuntu-18.04-desktop-amd64
- Linux for clash版本:
clash-linux-amd64-v1.11.8
Clash 安裝配置
Linux for clash 下載
- 訪問
clash
的版本釋出頁選擇合適的版本下載 - 這裡也提供我使用的 clash-linux-amd64-v1.11.8 快速下載地址
- 可以通過瀏覽器下載,也可以使用
wget
下載,clash
很小可以自行選擇下載方式,以下提供wget
下載命令bash wget http://github.com/Dreamacro/clash/releases/download/v1.11.8/clash-linux-amd64-v1.11.8.gz
Linux for clash 安裝
-
首先對下載下來的壓縮包解壓,可以採用命令解壓或者雙擊後提取,下面附解壓命令
bash gzip -d clash-linux-amd64-v1.11.8.gz
-
解壓後對
clash-linux-amd64-v1.11.8
檔案賦予執行許可權bash chmod +x clash-linux-amd64-v1.11.8
注意:雙擊提取後的檔名可能為clash-linux-amd64,對應更改後續命令即可
-
使用
mv
命令將檔案移動到指定目錄,方便全域性訪問clash
bash sudo mv clash-linux-amd64-v1.11.8 /usr/local/bin/clash
- 終端執行clash -v
命令檢查clash
能否正常執行,正常終端顯示結果如下:bash Clash v1.11.8 linux amd64 with go1.19 Fri Aug 26 13:20:30 UTC 2022
Linux for clash 配置
clash
執行需要依賴相應的YAML
配置檔案,預設讀取$HOME/.config/clash/config.yaml
- 當沒有這份檔案的時候,clash 會使用預設配置生成一份,所以我們可以直接執行一下
clash
,來獲取模版,同時會自動下載Country.mmdb
檔案 - 第一次在終端執行
clash
的結果如下:
bash INFO[0000] Can't find config, create a initial config file INFO[0000] Can't find MMDB, start download INFO[0000] Mixed(http+socks) proxy listening at: 127.0.0.1:7890
- 此時已獲得配置檔案的模板,但這模板並沒有什麼用,yaml
檔案的內容往往需要代理方提供,這就需要去購買VPN
- 大家可以自行找找,這裡所需的VPN
不能是基於軟體(僅能在安裝它所提供的軟體後才可使用)的,而是可以提供訂閱連結(即可以取得配置檔案的) - 在取得相應的配置檔案後將其改名為config.yaml
並替換相應目錄下的初始檔案
Linux for clash 執行
- 在配置完成後即可在終端執行
sudo clash
執行,若無報錯則執行成功 - 執行後可以瀏覽器訪問 Clash控制檯
- 如果訪問失敗,開啟設定->網路->網路代理,切換為手動,設定下圖引數後
- 訪問成功後將進入如下介面:
- 點選設定,檢查允許來自區域網的連線是否開啟
- 訪問嘗試外網網站,如 Google
- 至此
Linux for clash
已經安裝配置好,接下來將介紹如何配置開啟自啟動,如果不需要的可以跳過下一小節
Linux for clash 開機自啟
- 自啟動的話將
clash
託管給systemd
來管理 - 新建
clash.service
檔案bash sudo gedit /etc/systemd/system/clash.service
- 將以下內容寫入到檔案中,注意修改
ExecStart
的路徑bash [Unit] Description=Clash - A rule-based tunnel in Go Documentation=http://github.com/Dreamacro/clash/wiki [Service] OOMScoreAdjust=-1000 ExecStart=/usr/local/bin/clash -f /root/.config/clash/config.yaml Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user.target
-
ExecStart
的路徑可以使用以下命令進行查詢bash ls $HOME/.config/clash/config.yaml
- 配置開機自啟,並啟動clash
服務bash sudo systemctl enable clash sudo systemctl start clash sudo systemctl status clash
-
clash
執行起來之後,會在http://127.0.0.1:7890
這個地址監聽HTTP_PROXY
服務 - 接下來需要為 Linux 配置代理,使所有的 http 請求,都經由這個代理服務進出
- Linux 提供了專門的環境變數
http_proxy
和https_proxy
進行相關配置 - 採用以下命令設定並將其寫入
.bashrc
檔案中,使得每次開啟終端都可以生效bash echo -e "export http_proxy=http://127.0.0.1:7890\nexport https_proxy=http://127.0.0.1:7890" >> ~/.bashrc
- 重新打開個終端,配置即可生效
Proxychains 安裝配置
下載安裝
-
使用
apt
進行安裝,命令如下:bash sudo apt-get install proxychains
代理配置
-
開啟
/etc/proxychains.conf
檔案bash sudo gedit /etc/proxychains.conf
- 在檔案最後改成相應的代理方式、地址和埠,根據clash
的配置,修改如下:bash http 127.0.0.1 7890
代理使用
- 在命令前加
proxychains
即可 -
可以使用一下命令檢視是否成功
bash proxychains curl -kIsS http://www.google.com
寫在最後
- 目前上述方法已在
Ubuntu 18.04
和Ubuntu 16.04
上測試完成 - 若有其他問題歡迎評論指出