Wie kann ich systemweite Proxy-Server in Xubuntu, Lubuntu oder Ubuntu Studio einrichten?

Ich kann die Proxy-Einstellungen nirgends finden. Muss ich sie über das Terminal oder über "gconftools" einstellen oder gibt es eine grafische Benutzeroberfläche dafür?

Lösung

Systemweite Proxies in Ubuntu Studio, Xubuntu und XFCE müssen über Umgebungsvariablen gesetzt werden

Ubuntu Studio verwendet wie Xubuntu die XFCE-Desktop-Umgebung, die kein grafisches Einstellungswerkzeug enthält, um systemweite Proxies zu setzen (im Gegensatz zur Standard-Ubuntu-Desktop-Umgebung, Unity).

1. Einrichten des Proxys/der Proxys für die meisten Programme

  • Öffnen Sie die Datei /etc/environment mit gksudo leafpad (oder Ihrem bevorzugten Editor). Diese Datei speichert die systemweiten Variablen, die beim Booten initialisiert werden.

  • Fügen Sie die folgenden Zeilen hinzu und ändern Sie sie entsprechend ab. Sie müssen sowohl in Groß- als auch in Kleinbuchstaben duplizieren, da (leider) einige Programme nur nach dem einen oder dem 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"
    

2. Richten Sie dann Proxys für GTK3-Programme wie Rhythmbox ein:

Einige neuere GTK3-Programme wie Rhythmbox ignorieren die oben gesetzten Umgebungsvariablen und verlassen sich stattdessen auf die Gnome-Einstellungen. Um sicherzugehen, dass sie abgedeckt sind, öffnen Sie ein Terminal und fügen Sie die untenstehende Zeile für Zeile ein und ändern Sie sie nach Bedarf:

gsettings set org.gnome.system.proxy mode 'manual' 
gsettings set org.gnome.system.proxy.http host 'myproxy.server.com'
gsettings set org.gnome.system.proxy.http port 8080

3. Schließlich richten Sie die Proxies für apt-get und Update Manager ein

  • Auch diese Programme werden sich nicht an die Umgebungsvariablen halten. Erstellen Sie eine Datei namens 95proxies in /etc/apt/apt.conf.d/, und fügen Sie Folgendes ein:

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

Melden Sie sich schließlich ab und starten Sie neu, um sicherzustellen, dass die Änderungen wirksam werden.


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


Skripte zum Ein- und Ausschalten des Proxy-Servers:

Haftungsausschluss:: Bevor Sie fortfahren, beachten Sie, dass ich dies auf Lubuntu 14.04 ausprobiert habe und es ist WICHTIG, dass die Datei /etc/environment nur eine Zeile enthalten sollte, nämlich '$PATH...' und es sollte nichts anderes in der Datei sein, sonst müssen Sie möglicherweise den Code des Skripts ändern. Diese Skripte setzen und entfernen den Proxy wie oben beschrieben, aber sie verlassen sich auf das Kürzen von Dateien und das Anhängen von Dateien, um die Dateien /etc/environment und /etc/apt/apt.conf.d/95proxies zu ändern. Stellen Sie also sicher, dass:

  1. /etc/environment enthält nur eine Zeile, nämlich '$PATH:...'. Und sonst nichts.

  2. Die Datei /etc/apt/apt.conf.d/95proxies existiert nicht oder hat nichts Wichtiges enthalten.

Wenn Sie also den Prozess des Ein- und Ausschaltens des Proxys automatisieren wollen, ohne alles eintippen zu müssen, können Sie zwei ausführbare Shell-Skripte proxyon.sh und proxyoff.sh erstellen:

proxyon.sh:`

if [ $(id -u) -ne 0 ]; then
  echo "This script must be run as root";
  exit 1;
fi

if [ $# -eq 2 ]
  then

  gsettings set org.gnome.system.proxy mode 'manual' ;
  gsettings set org.gnome.system.proxy.http host '$1';
  gsettings set org.gnome.system.proxy.http port $2;

  grep PATH /etc/environment > lol.t;
  printf \
  "http_proxy=http://$1:$2/\n\
  https_proxy=http://$1:$2/\n\
  ftp_proxy=http://$1:$2/\n\
  no_proxy=\"localhost,127.0.0.1,localaddress,.localdomain.com\"\n\
  HTTP_PROXY=http://$1:$2/\n\
  HTTPS_PROXY=http://$1:$2/\n\
  FTP_PROXY=http://$1:$2/\n\
  NO_PROXY=\"localhost,127.0.0.1,localaddress,.localdomain.com\"\n" >> lol.t;

  cat lol.t > /etc/environment;

  printf \
  "Acquire::http::proxy \"http://$1:$2/\";\n\
  Acquire::ftp::proxy \"ftp://$1:$2/\";\n\
  Acquire::https::proxy \"https://$1:$2/\";\n" > /etc/apt/apt.conf.d/95proxies;

  rm -rf lol.t;

  else

  printf "Usage $0  \n";

fi

proxyoff.sh:

if [ $(id -u) -ne 0 ]; then
  echo "This script must be run as root";
  exit 1;
fi

gsettings set org.gnome.system.proxy mode 'none' ;

grep PATH /etc/environment > lol.t;
cat lol.t > /etc/environment;

printf "" > /etc/apt/apt.conf.d/95proxies;

rm -rf lol.t;

Wie man sie benutzt: Sobald Sie diese Skripte erstellt haben, machen Sie sie ausführbar und können sie an einem beliebigen Ort speichern. Um den Proxy zu aktivieren, müssen Sie nur in das Verzeichnis gehen, in dem sich das Skript 'proxyon.sh' befindet, und dann sudo ./proxyon.sh {host} {Port} eingeben. Betrachten Sie dies als ein Beispiel:

 $ sudo ./proxyon.sh 10.2.20.17 8080
 OR
 $ sudo ./proxyon.sh myproxy.server.com 8080

Wobei '10.2.20.17' die IP des Proxyservers'ist - Sie können auch etwas wie myproxy.server.com eingeben - und '8080' ist der Port. Danach loggen Sie sich aus und melden sich bei Ihrem Konto an, um sicherzustellen, dass alles richtig eingestellt ist. Dann können Sie das Internet nutzen oder was auch immer. Und wenn Sie den Proxy ausschalten wollen, gehen Sie in das Verzeichnis, das 'proxyoff.sh' enthält, und geben Sie ein:

 $ sudo ./proxyoff.sh

Damit werden alle Proxys deaktiviert. Melden Sie sich nun ab und wieder an, um in den normalen Modus zu wechseln.

Kommentare (10)

Es ist nicht notwendig, das gesamte System für apt-get tweak über die Datei proxy95 in /etc/apt/apt.conf.d neu zu starten

  • Es funktioniert sofort nachdem die Datei geschrieben wurde und
  • verschwindet sofort nach dem Verschwinden der Datei.

Erwägen Sie ein Skript zum Aktivieren und Deaktivieren der Datei, indem Sie sie in *.bak umbenennen, um den Proxy bei Bedarf schnell zu wechseln.

Kommentare (0)

Gehen Sie zu Dash Home, tippen Sie auf Systemeinstellungen, klicken Sie auf Systemeinstellungen und dann auf Netzwerk, um die Proxy-Einstellungen anzuzeigen. Klicken Sie auf Systemweit. Es kann wie in den System-Proxy-Einstellungen funktionieren.

Kommentare (2)