Iptables
WFH 時使用 iptables 暫時忽略/繞過代理設置
我的工作中有一個 HTTP 和 HTTPS 代理。雖然當我在家工作時(在工作的筆記型電腦上),我想禁用代理設置(直接連接到 Internet)。然後,當我回來工作時,帶回代理設置。
問題是,只有少數應用程序辨識系統範圍的代理設置(使用 Linux Mint 的網路管理器
HTTPS_PROXY
和HTTP_PROXY
環境變數設置)。對於許多其他應用程序(IntelliJ、SBT、Maven、Synaptic、apt-get、git),我必須手動設置它們,並且每次編輯它們的設置都很乏味。我可能會編寫一個腳本或其他東西來編輯所有這些應用程序的設置文件,但我認為它容易出錯(我可能會損壞文件)並且不是最簡單的解決方案。我想到的是攔截發送到代理的傳出數據包,以某種方式重新打包並直接發送到網際網路。是否可以使用 iptables 規則或類似規則來做到這一點?在網路、代理等方面,我並不是真正的專家,所以我什至不確定它是否可行,更不用說自己建構規則了。將不勝感激您的幫助!
您可以在筆記型電腦上安裝代理並配置所有應用程序以使用它(在本地主機上)。然後,您可以根據您的位置更改本地代理的配置以使用或不使用父代理。
Tinyproxy 可能是這項任務的理想選擇。這是它的 Debian 軟體包中的描述:
Package: tinyproxy Version: 1.8.3-3+b1 Installed-Size: 145 Description-en: A lightweight, non-caching, optionally anonymizing HTTP proxy An anonymizing HTTP proxy which is very light on system resources, ideal for smaller networks and similar situations where other proxies (such as Squid) may be overkill and/or a security risk. Tinyproxy can also be configured to anonymize HTTP requests (allowing for exceptions on a per-header basis).