GFW的存在嚴重影響了中國用戶的Linux的使用體驗, 提高了新用戶學習linux的門檻.
更換中國地區的源並不能解決所有的問題, 所以我們都需要黑魔法.
然而單純啟動黑魔法的proxy服務並不能直接讓軟體使用proxy的網路, 於是我們需要了解常見的應用的 全局 proxy的設定.
如果您使用的是VPN或者虛擬網卡類型的黑魔法, 請直接關閉本文. 如果是有一定使用經驗的用戶, 不妨將本文作為一個CheatSheet, 方便重灌系統之後配置和查閱. 也歡迎諸位讀者對文章進行斧正.
雖然是本文是面向中國使用者的教學, 但是proxy的設定是Linux的重要知識, 也是具有參考價值的 :)
圖形界面
系統(chromium系列browser)代理設定
自己的經驗告訴我, 系統代理對絕大多數程式是沒有用的. 但是至少chromium會忠實地參照系統代理, 所以這個設定就不那麼雞肋了.
- Kde
打開Settings
搜尋Proxy
參照如圖的要求填寫
點擊Apply
- Gnome
打開Settings
點擊Network
點擊Network Proxy的小齒輪
輸入設定參數
完成後直接退出即可
- Xfce
遺憾的是, Xfce並沒有自己的系統代理設定.
這就需要直接使用terminal運行chromium
chromium-browser --proxy-server="http://127.0.0.1:1090"
我們也可以將這個命令添加到app list中來替換默認的chromium
其他的圖形界面應用
我們得認知到不是所有的軟體都會遵循系統設定的全局proxy
很多的軟體有自己的proxy設定.
使用的方法很簡單, 直接在軟體的settings中尋找proxy進行填寫即可.
下面的程式都支援proxy的設定
- Firefox
- Telegram
- Spotify
- Dropbox
Terminal
Bash
cd ~
vim .bashrc
( 如果不會使用vim可以使用nano, 其他不變
Vim的教學:
https://hoyipngai.medium.com/vim的基礎入門筆記-323f8be7eada )
export http_proxy="http://yourproxyaddress:proxyport"
export https_proxy="https://yourproxyaddress:proxyport"
(例如)
export http_proxy="http://127.0.0.1:4091"
export https_proxy="https://127.0.0.1:4091"
保存退出, 重新啟動bash
Zsh
cd ~
vim .zshrc
( 如果不會使用vim可以使用nano, 其他不變
Vim的教學:
https://hoyipngai.medium.com/vim的基礎入門筆記-323f8be7eada )
export http_proxy="http://yourproxyaddress:proxyport"
export https_proxy="https://yourproxyaddress:proxyport"
(例如)
export http_proxy="http://127.0.0.1:4091"
export https_proxy="https://127.0.0.1:4091"
保存退出, 重新啟動zsh
APT
- 更改設定檔案
進入apt的配置檔案
sudo nano /etc/apt/apt.conf
在其中加入
Acquire::http::Proxy "http://yourproxyaddress:proxyport";
(例如)
Acquire::http::Proxy "http://127.0.0.1:1190";
保存退出即可
Git
添加proxy
- 使用命令
git config --global http.proxy http://proxyUsername:proxyPassword@proxy.server.com:port
(例如)
git config --global http.proxy http://127.0.0.1:1099
該命令會直接作用於 ~/gitconfig
- 更改檔案
更改~/gitconfig
[http]
proxy = http://127.0.0.1:1099
取消proxy設定
- 刪除設定檔案中的內容
- 使用命令
git config --global --unset http.proxy
Web開發工具
npm
- 使用命令
npm config set proxy http://username:password@host:port
npm config set https-proxy http://username:password@host:port
- 更改設定檔
vim ~/.npmrcproxy=http://username:password@host:port
https-proxy=http://username:password@host:port
https_proxy=http://username:password@host:port
yarn
- 使用命令
yarn config set proxy http://username:password@host:port
yarn config set https-proxy http://username:password@host:port
- 更改設定檔
vim ~/.yarnrcproxy "http://127.0.0.1:1091"
Curl
- 更改設定檔
vim ~/.curlrcproxy = http://username:password@proxy-host:port