Wie konfiguriere ich Proxies ohne GUI?

79

Wie konfiguriere ich Proxy-Einstellungen in den Versionen Ubuntu Server oder Minimal (CLI) mit dem Terminal?

Asad
quelle

Antworten:

108

Systemweite Proxys in CLI Ubuntu / Server müssen als Umgebungsvariablen festgelegt werden.

  • Öffnen Sie die /etc/environmentDatei mit vi(oder Ihrem Lieblingseditor). In dieser Datei werden die systemweiten Variablen gespeichert, die beim Start initialisiert wurden.
  • Fügen Sie die folgenden Zeilen hinzu, und passen Sie sie entsprechend an. Sie müssen sowohl in Groß- als auch in Kleinbuchstaben duplizieren, da (leider) einige Programme nur nach dem einen oder anderen suchen:

    http_proxy = "http://myproxy.server.com:8080/"
    https_proxy = "http://myproxy.server.com:8080/"
    ftp_proxy = "http://myproxy.server.com:8080/"
    no_proxy = "localhost, 127.0.0.1, localaddress, .localdomain.com"
    HTTP_PROXY = "http://myproxy.server.com:8080/"
    HTTPS_PROXY = "http://myproxy.server.com:8080/"
    FTP_PROXY = "http://myproxy.server.com:8080/"
    NO_PROXY = "localhost, 127.0.0.1, localaddress, .localdomain.com"
    
  • apt-get, aptitudeusw. werden die Umgebungsvariablen nicht beachten, wenn sie normal mit verwendet werden sudo. Konfigurieren Sie sie also separat. Erstellen Sie eine Datei namens 95proxiesin /etc/apt/apt.conf.d/und umfassen die folgenden:

    Acquire :: http :: proxy "http://myproxy.server.com:8080/";
    Acquire :: ftp :: proxy "ftp://myproxy.server.com:8080/";
    Acquire :: https :: proxy "https://myproxy.server.com:8080/";
    

Abschließend müssen Sie sich abmelden und neu starten, um sicherzustellen, dass die Änderungen wirksam werden.


Quellen: 1 , 2 . Siehe insbesondere 1 für zusätzliche Hilfe, einschließlich eines Skripts zum schnellen Ein- und Ausschalten der Proxys.

ish
quelle
Ich brauche Hilfe dazu. Ich habe dies schon eine Weile auf einem virtuellen Ubuntu Server 12.04 ausprobiert und es funktioniert nicht. Ich habe es mit einem virtuellen Ubuntu 12.04 (nicht Server) arbeiten. Aber ich habe die GUI verwendet, um globale Einstellungen anzuwenden. Ich habe es mit Anführungszeichen versucht, wie der untere Link andeutet, und es hat nicht geholfen. Wenn ich eine IP-Adresse anstelle eines domain.com-Namens eingebe, ändert sich die Formatierung? Ich habe verschiedene Kombinationen ausprobiert.
Frantumn
Sind Sie sicher, dass https_proxy = "http?
BBK
Nun, dies ist aus meiner Sicht keine gute Antwort, da sich die (falschen) Proxy-Informationen, die ich bei der Installation angegeben habe, nicht in / etc / environment befinden.
James T Snell
1
In meinem Fall, Ubuntu 12.04, war es nicht notwendig, sich abzumelden und neu zu starten, um sicherzustellen, dass die Änderungen wirksam werden. Ich führe aus: sudo service network-manager restart
Daniel Mora
1
@BBK Auch wenn Sie https verwenden, müssen Sie möglicherweise noch eine Verbindung zum Proxy über http herstellen, sodass der Proxy-Server Ihre vermutlich sichere Verbindung abhören kann.
S3lph
9

Wenn Sie einen Authentifizierungs-Proxy haben, unterscheiden sich die URLs. Anstatt von:

"http://myproxy.server.com:8080/"

Du wirst haben:

"http://user_name:[email protected]:8080/"

Beachten Sie, dass dies immer noch URLs sind, sodass Passwörter (und möglicherweise Benutzernamen) URL-codiert werden müssen .

Ein Benutzername muruund ein Passwort von )qv3TB3LBm7EkP}sehen beispielsweise so aus:

"http://muru:)qv3TB3LBm7EkP%[email protected]:8080/"

Dies kann auf verschiedene Arten erfolgen:

  1. Es gibt mehrere Websites zum Kodieren:
  2. Programmatisch:

Zur man urlNot können Sie sehen, welche Zeichen codiert werden müssen:

An escaped octet is encoded as a character triplet, 
consisting of the percent character "%" followed by 
the two hexadecimal digits representing the octet code...

Und die Oktettcodes sind verfügbar auf man ascii.

muru
quelle
0
                                 Proxy Environment Variables:

http_proxy: Proxyserver für HTTP-Verkehr
https_proxy: Proxyserver für HTTPS-Verkehr
ftp_proxy: Proxyserver für FTP-Verkehr
no_proxy: Muster für IP-Adressen oder Domänennamen, die den Proxy nicht verwenden sollen

Der Wert für jede Proxy-Einstellung mit Ausnahme von no_proxy verwendet dieselbe Vorlage. proxy_http=username:password@proxy-host:port

Proxy für temporäre Einstellungen: export HTTP_PROXY=user:[email protected]:8080

Persistent Proxy Settings: Öffnet die vim ~/.bash_profileBash-Setup-Datei und fügt die folgenden Zeilen ein

export http_proxy=username:password@proxyhost.com:8080
export https_proxy=username:password@proxyhost.com:8081
export no_proxy=localhost, 127.0.0.1, *.my.lan

Verwenden Sie source ~/.bash_profile, um die Änderungen zu übernehmen

Yossarian42
quelle
Tippfehler in der letzten Zeile der "Export" -Beispiele ("exprot" sollte "export" sein). Ich habe versucht, es zu bearbeiten, um das Update anzuwenden, aber anscheinend müssen Änderungen "6 Zeichen oder mehr" sein ...
Jeremy Davis
1
Danke, ich habe es korrigiert.
Yossarian42