So stellen Sie vom Terminal aus eine Verbindung zum Internet her, wenn Sie einen Proxy mit Authentifizierung verwenden

13

Ich muss Proxy-Server verwenden, um eine Verbindung zum Internet herzustellen. Ich habe alle Proxys in meinen System-Proxy-Einstellungen festgelegt. Jetzt kann ich mit meinem Browser und meinen Anwendungen eine Verbindung zum Internet herstellen.

Ich kann von meinem Terminal aus keine Verbindung zum Internet herstellen.

Ich habe es versucht

export http_proxy="http://username:password@proxyserver:port/" 

Dennoch können Terminalanwendungen keine Verbindung zum Internet herstellen.

TLE
quelle
1
Welchen Befehl führen Sie im Terminal aus, um sich mit dem Internet zu verbinden? Oder wie sehen Sie, dass Sie keine Verbindung herstellen können?
Nohillside
1
Der Proxy-Server (ohne s), von dem Sie hier sprechen, leitet Ihre webVerbindungen weiter, nicht alle Ihre Internetverbindungen. webVerbindungen verwenden die Ports 80, 443…. Internetverbindungen können alle verbleibenden Ports des 65536-Sets nutzen. Als Beispiel verwendet eine sshVerbindung Port 22, der nicht über Ihren httpProxyserver geleitet wird. Daher die Frage von Patrix, um eine bessere Antwort zu erhalten.
Dan
@patrix ping google.com
TLE
@TLE Ping ist eine Ausnahme von der Regel und verwendet den Proxy überhaupt nicht, auch wenn festgelegt http_proxyist. Ping erwartet eine direkte Verbindung, und in vielen Fällen, wenn ein Proxy verwendet wird, schlägt Ping fehl, obwohl der Proxy weiterhin erfolgreich eine Verbindung herstellt.
BinaryMisfit
3
versuchen Sie es curl -o /dev/null www.google.comstattping
nohillside

Antworten:

11

Das Terminal verwendet keine Proxy-Einstellungen, die in den Netzwerkeinstellungen konfiguriert wurden, da keine Verbindung hergestellt wird. Mit dem Terminal können Sie nur Befehle auslösen, die das Netzwerk auf unterschiedliche Weise verwenden.

Beim Festlegen Ihrer http_proxyund https_proxyUmgebungsvariablen sollten die Präfixe http:oder nicht enthalten sein https:.

Daher sollte die Umgebungsvariable in Ihrem Fall lauten:

http_proxy=username:password@proxyserver:port

Hinweis: Bei vielen alten Programmen treten Probleme bei der Verbindung über Proxy-Server auf, für die vor dem Herstellen der Verbindung eine Authentifizierung erforderlich ist.

Zusätzlicher Tipp:

Aufgrund unserer Infrastruktur war es für uns viel einfacher, Benutzer SquidMan lokal ausführen zu lassen und es für die Verbindung mit unserem Hauptproxy zu konfigurieren. Dies ermöglicht es dem lokalen Computer, direkt als Proxy zu fungieren, und beseitigt viele Authentifizierungsprobleme usw., wenn Proxyserver auf Mac-Computern verwendet werden, insbesondere in gemischten und AD-Umgebungen.

Bei dieser Methode wäre unser http_proxyund https_proxy:

http_proxy=localhost:3128
BinaryMisfit
quelle
Du meinst, ich muss schreiben, exportieren http_proxy = "Benutzername: Passwort @ Proxyserver: Port"
TLE
@TLE Richtig. Das Terminal muss das Protokoll nicht kennen, da es bereits weiß, dass es sich um eine HTTP-Verbindung handelt.
BinaryMisfit
Trotzdem kann ich keine Verbindung zum Internet herstellen.
TLE
@TLE Dann ist das Problem höchstwahrscheinlich mit der Authentifizierung. Versuchen Sie, den Proxy ohne Angabe des Benutzernamens und des Kennworts einzurichten. Dies bedeutet, dass Sie beim Versuch, eine Verbindung herzustellen, zur Eingabe der Informationen aufgefordert werden. Es zeigt normalerweise an, dass der Proxy selbst die Verbindung vom Terminal nicht unterstützt. Wir hatten intern ein ähnliches Problem, weshalb ich die SquidMan-Lösung vorgeschlagen habe.
BinaryMisfit
funktioniert immer noch nicht??
TLE
-1

Sie können den folgenden Befehl im Terminalfenster verwenden.

networksetup -setairportnetwork $Interface $ssID $Password

Hier $Interfaceist die "enX" -Stilkennung für Ihre AirPort-Karte (normalerweise en1, aber es ist en0 bei MacBook Airs und en2 bei Mac Pros und kann auch aus anderen Gründen variieren).

$ssIDist Ihr Netzwerkname, z. B. "Simons SSID". Schließen Sie es in Anführungszeichen ein, wenn es Leerzeichen enthält.

$Password ist Ihr WEP-, WPA-PSK- oder WPA2-PSK-Kennwort.

Azik Abdullah
quelle
1
Dadurch wird das Netzwerk konfiguriert und das Terminal selbst kann keine Verbindung über einen Proxy herstellen.
BinaryMisfit