代理服务器后面的 Steam-Linux

代理服务器后面的 Steam-Linux

我刚刚从 下载了 Steam Beta这里

我安装了该软件包,当我启动 steam 时,我得到以下信息在此处输入图片描述

然后它说无法连接。

当我从终端启动它时,出现此错误。
SteamUpdater: Error: Download failed: http error 407

由于我收到 407 错误,因此它与代理身份验证有关。

我已经设置了 http_proxy、ftp_proxy、https_proxy 环境变量。我位于经过身份验证的代理服务器后面。

如何让 Steam 在代理服务器后面运行?

答案1

您可以使用代理链

vim /etc/proxychains.conf

像这样放置你的代理信息:

#socks4         127.0.0.1 9050
socks5          127.0.0.1 1080

然后像这样运行 steam:

proxychains steam

我希望这对你有用。

答案2

首先,Steam 客户端除了更新客户端外,不使用代理。其余的 Steam 通信都是基于 UDP 的。您将无法通过代理服务器玩游戏。

对于更新,您可以使用代理,但一般来说,要在身份验证代理服务器后面使用 Linux 应用程序,您需要获取提供给代理服务器的身份验证详细信息。最常见的是 Microsoft NTLM 类型的身份验证。

在极少数情况下,如果不是,您可以通过以下语法向代理进行身份验证:

http://username:password@proxyhost:port/

例子:

http_proxy=http://john:[email protected]:8123/

但对于大多数人来说,这还不够。要将 MS 代理身份验证标签添加到传出数据包,您需要一个像 cntlm 这样的程序。Cntlm 是一个小型代理服务器,作为本地计算机上的服务运行。您将应用程序指向此代理服务器。

Cntlm 代理服务器需要设置以下详细信息:

  1. 父级(上游)代理服务器地址和端口
  2. 认证用户名和域名
  3. 密码或(推荐)密码的哈希值以及身份验证方法。

这是通过编辑 cntlm 配置文件来完成的,通常/etc/cntlm.conf是为了提供所需的详细信息。

如果您想使用哈希,cntlm提供了一种生成哈希的方法。

  1. 配置cntlm的父代理地址、端口以及用户名和域名。
  2. 重新启动 cntlm,例如通过/etc/init.d/cntlm restart
  3. 跑步cntlm -IM http://test.com
  4. 系统将提示您输入密码。它将针对代理服务器测试密码并显示要添加到文件中的其余信息cntlm.conf,例如:

    johan@Komputer:~$ sudo cntlm -IM http://test.com
    Password: 
    Config profile  1/4... OK (HTTP code: 200)
    ----------------------------[ Profile  0 ]------
    Auth            NTLMv2
    PassNTLMv2      A12B34C56D78E90A12B34C56D78E90A1
    

将这两行添加到/etc/cntlm.conf文件中(删除任何可能冲突的其他内容)

答案3

我只是创建了一个 steam-proxy.desktop 文件,并将 http_proxy 环境变量设置为

Exec=env http_proxy=http://192.168.43.1:8080/ /usr/bin/steam -tcp %U

我将其保存在~/.local/share/applications。您可以在 下找到完整文件/usr/share/applications/steam.desktop

请注意,steam 在后台运行,只有当它被终止并重新启动时,才会发生变化。

答案4

您不得通过代理运行 Steam。Steam 用户协议规定:

您同意不会使用 IP 代理或其他方法来伪装您的居住地,无论是为了规避游戏内容的地理限制、以不适用于您所在地理位置的价格购买游戏,还是为了任何其他目的。如果您这样做,我们可能会终止您对帐户的访问权限。

我知道这没什么帮助,但我只是想让你知道。

相关内容