Windows 10 - 设置具有身份验证的操作系统级代理

Windows 10 - 设置具有身份验证的操作系统级代理

要连接到某个服务器,我需要始终使用相同的 IP。为此,我创建了一个私人代理并添加了身份验证,以便黑客不会将其用于恶意目的。

在 Firefox 等软件上配置代理非常简单。问题是,Web 浏览器并不是唯一需要连接到此服务器的软件。为此,我希望将我的整个操作系统配置为使用代理。

我尝试查看 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

然后您可以将 Windows 的代理 ip:port 设置为localhost:8081

一个更重量级的解决方案可能是使用乌贼. 其他可能有用的网络代理包括私有网络温盖特另一个代理服务器

答案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. 重新启动 Squid 服务

  5. 您现在可以调用本地代理,它将请求转发给经过身份验证的代理并返回响应

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

相关内容