Steam-Linux hinter einem Proxy-Server

12

Ich habe gerade Steam Beta von hier heruntergeladen .

Ich habe das Paket installiert und beim Starten von Steam erhalte ich FolgendesBildbeschreibung hier eingeben

Anschließend wird angezeigt, dass keine Verbindung hergestellt werden kann.

Wenn ich es vom Terminal starte, erhalte ich diese Fehlermeldung.
SteamUpdater: Error: Download failed: http error 407

Da ich einen 407-Fehler erhalte, hängt er mit der Proxy-Authentifizierung zusammen.

Ich habe meine Umgebungsvariablen http_proxy, ftp_proxy und https_proxy eingerichtet. Ich bin hinter einem authentifizierten Proxy-Server.

Wie kann ich Steam von einem Proxyserver aus zum Laufen bringen?

Hashken
quelle
Können Sie mir bitte die Ausgabe einfügen echo $http_proxy.
Jobin
http://username:password@server:port
Hashken

Antworten:

3

Sie können Proxy-Ketten verwenden .

vim /etc/proxychains.conf

Platzieren Sie Ihre Proxy-Informationen wie folgt:

#socks4         127.0.0.1 9050
socks5          127.0.0.1 1080

Dann mache Dampf wie folgt:

proxychains steam

Ich hoffe diese Arbeit für Sie.

sajjadG
quelle
2

Zunächst einmal verwendet der Steam-Client den Proxy nur für die Aktualisierung des Clients. Der Rest der Steam-Kommunikation basiert auf UDP. Sie können keine Spiele über einen Proxyserver spielen.

Für die Aktualisierungen können Sie einen Proxy verwenden. Um jedoch im Allgemeinen Linux-Anwendungen hinter einem Authentifizierungs-Proxy-Server zu verwenden, müssen Sie die Authentifizierungsdetails an den Proxy-Server senden. In den meisten Fällen handelt es sich um eine Microsoft NTLM-Authentifizierung.

In dem seltenen Fall, dass dies nicht der Fall ist, können Sie sich beim Proxy mithilfe der folgenden Syntax authentifizieren:

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

Beispiel:

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

Für die meisten Menschen wird das jedoch nicht ausreichen. Um die MS-Proxy-Authentifizierungs-Tags zu den ausgehenden Paketen hinzuzufügen, benötigen Sie ein Programm wie cntlm. Cntlm ist ein kleiner Proxy-Server, der als Dienst auf Ihrem lokalen Computer ausgeführt wird. Sie verweisen Ihre Anwendungen auf diesen Proxy-Server.

Der Cntlm-Proxyserver muss mit den folgenden Details eingerichtet werden:

  1. Die Adresse und der Port des übergeordneten (übergeordneten) Proxyservers
  2. Der Benutzername und der Domänenname für die Authentifizierung
  3. Entweder das Passwort oder (empfohlen) ein Hash des Passworts und die Authentifizierungsmethode.

Dies erfolgt durch Bearbeiten der cntlm-Konfigurationsdatei, /etc/cntlm.confum in der Regel die erforderlichen Details bereitzustellen.

Wenn Sie einen Hash verwenden möchten, bietet cntlm die Möglichkeit, einen zu generieren.

  1. Konfigurieren Sie cntlm mit der übergeordneten Proxy-Adresse, dem Port, dem Benutzernamen und dem Domänennamen.
  2. Starten Sie cntlm neu, z. B. über /etc/init.d/cntlm restart
  3. Lauf cntlm -IM http://test.com
  4. Sie werden aufgefordert, Ihr Passwort einzugeben. Das Kennwort wird mit dem Proxyserver verglichen und der Rest der Informationen wird angezeigt, die der cntlm.confDatei hinzugefügt werden sollen. Beispiel:

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

Fügen Sie diese beiden Zeilen so hinzu, wie sie in der /etc/cntlm.confDatei erscheinen (und entfernen Sie alle anderen, die Konflikte verursachen könnten).

Johan
quelle
Ich bin ein wenig unsicher, wie die Proxy-Details mit den UDP-Paketen zusammenarbeiten können. Wenn ich say Firefox verwende, stelle ich die Proxy-Details ein und für jedes gesendete TCP-Paket ist es in Proxy-Headern eingeschlossen. Ich gehe davon aus, dass dasselbe mit den Steam UDP-Paketen passieren sollte. In diesem Fall sollte ich in der Lage sein, die Verwendung von Proxy irgendwo richtig anzuzeigen? Wenn ich nur die Proxy-Umgebungsvariablen einstelle, funktionieren sie nur, wenn Steam sie verwendet und dies anscheinend nicht der Fall ist. Wenn ich einen Socken-Proxy-Server benutze, hilft die Verwendung von Aktien?
Hashken
UDP-Pakete sind nicht verbindungsorientiert, daher können Sie keinen Proxy für UDP-Protokolle angeben.
Johan
1

Ich habe einfach eine steam-proxy.desktop-Datei mit der als solche eingestellten http_proxy env var erstellt

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

Ich habe es unter gespeichert ~/.local/share/applications. Die vollständige Datei finden Sie unter/usr/share/applications/steam.desktop

Achten Sie darauf, dass der Dampf im Hintergrund läuft und Änderungen erst dann stattfinden, wenn er beendet und neu gestartet wurde.

Ray Foss
quelle
0

Steam funktioniert nicht auf den Standard-HTTP-Ports (80, 443). Lesen Sie es auf der Steam-Website nach . Sie müssen zusätzliche Ports auf dem Proxy-Server aktivieren. Es scheint möglich zu sein, wird aber nicht unterstützt. Wo angegeben wird, dass es nicht möglich ist , ist hier .

phulstaert
quelle
0

Sie dürfen Steam nicht über einen Proxy ausführen. Der Steam-Abonnentenvertrag sieht vor:

Sie erklären sich damit einverstanden, dass Sie IP-Proxying oder andere Methoden nicht verwenden, um den Ort Ihres Wohnsitzes zu verschleiern, um geografische Beschränkungen für Spielinhalte zu umgehen, zu Preisen zu kaufen, die für Ihre Region nicht gelten, oder für andere Zwecke. In diesem Fall können wir Ihren Zugang zu Ihrem Konto beenden.

Nicht wirklich hilfreich, ich weiß, aber ich wollte dich nur wissen lassen.

Octavian
quelle
Ich denke das ist nicht wahr. Dies bedeutet lediglich, dass Sie den Proxy nicht verwenden können, um den Wohnort zu verschleiern, und nicht, dass Sie den Proxy überhaupt nicht verwenden können. (Ich bin kein Anwalt und Englisch ist nicht meine Muttersprache, daher kann ich mich irren.) Aber ich denke, die Grammatik der Vereinbarung sagt genau das aus.
Kubacapek
Es ist kein IP-Proxy. Es handelt sich um ein lokales Netzwerk-Proxy.
cprn
0

Auch wenn Ihre http_proxyVariable festgelegt ist, funktioniert sie beim Starten über die GUI nicht. Wenn aber aus dem gleichen Terminal , wo echo $http_proxygibt http://username:password@server:portSie den Befehl starten steam, funktioniert alles einwandfrei - zumindest für mich.

marcotama
quelle
Es ist möglich, die Umgebung von einem Anwendungsstarter aus zu ändern, indem der Befehl mit vorangestellt wird env VAR=VALUE [...].
David Foerster
Richtig! Sie sollten also Ihren GUI-Launcher bearbeiten, steamenv http_proxy=http://username:password@server:port steam
indem
-1

Sie können es über tsocks zum Laufen bringen. Wenn Sie 64-Bit ausführen, stellen Sie sicher, dass Sie eine 32-Bit-Version kompilieren. Ich habe es erfolgreich über Putty über einen SSH-Tunnel laufen lassen.

Ron Hoffman
quelle
Können Sie erklären, wie das geht?
David Foerster