Windows 10 - 設定具有驗證的作業系統層級代理

Windows 10 - 設定具有驗證的作業系統層級代理

要連接某個伺服器,我需要始終具有相同的 IP。為此,我創建了一個私有代理並添加了身份驗證,以便駭客不會將其用於惡意目的。

在 Firefox 等軟體上設定代理非常簡單。問題是網頁瀏覽器並不是唯一需要與該伺服器連接的軟體。為此,我想將整個作業系統配置為使用代理程式。

我嘗試查看 Windows 10 網路配置,看到一個放置代理 IP 位址的位置,但沒有選項包含要連接的使用者名稱/密碼。

Windows 網路設定

我該如何解決這個問題?

答案1

Windows 10 不支援自動代理的使用者名稱和密碼,這是出於安全原因。

您需要設定一個兩步驟代理:

  1. 您電腦上的本機代理伺服器,無需使用者名稱和密碼
  2. 本地代理應使用使用者名稱和密碼連接到真實的外部代理

一個可能的解決方案是安裝節點.js和...一起 代理密碼自動器, 被形容為 :

proxy-password-automator
會自動將使用者/密碼傳送至 http 代理伺服器,因此您無需手動輸入。

理論上,如果您在 處有代理伺服器real_proxy_ip:8080,則執行以下命令在 處建立本機代理localhost:8081

node proxy-login-automator.js -local_port 8081 -remote_host real_proxy_ip -remote_port 8080 -usr user -pwd pw

然後你可以將Window的代理ip:port設定為localhost:8081

更重量級的解決方案可能是使用烏賊。其他可能有用的網路代理是隱私, 溫蓋特,匿名,CC代理

答案2

您可以使用 Windows 憑證向代理程式進行身份驗證。

在控制台中搜尋Windows憑證

答案3

此外 :@harrymc回答上面,另一個選擇:


透過 Squid 代理設定代理驗證

解決方案的優點和局限性

  1. 安裝本地代理,例如:烏賊用於窗戶

  2. 安裝後,開啟squid.conf檔案(滑鼠右鍵點選任務欄上的squid圖示 - >開啟Squid配置

  3. 輸入以下程式碼,請僅提供經過驗證的代理 IP(在我們的範例中:10.1.2.3 -不是域一

    http_access allow all
    http_port 3128
    
    coredump_dir /var/spool/squid3
    refresh_pattern ^ftp:       1440    20% 10080
    refresh_pattern ^gopher:    1440    0%  1440
    refresh_pattern -i (/cgi-bin/|\?) 0 0%  0
    refresh_pattern (Release|Packages(.gz)*)$      0       20%     2880
    refresh_pattern .       0   20% 4320
    
    cache_peer 10.1.2.3 parent 80 0 no-query default login=my_username:my_password
    
    never_direct allow all
    access_log none
    cache_log none
    
  4. 重新啟動魷魚服務

  5. 現在您可以呼叫本機代理,該代理會將請求轉發給經過驗證的代理並回傳回應

    Invoke-WebRequest -Uri 'https://stackoverflow.com/' -Proxy 'http://127.0.0.1:3128'
    

相關內容