# /etc/environment # Setzen des LUH-Web-Proxy #http_proxy=http://anon-proxy.rrzn.uni-hannover.de:3130 #http_proxy=http://filter-proxy.rrzn.uni-hannover.de:3129 #http_proxy=http://web-proxy.rrzn.uni-hannover.de:3128 http_proxy=http://secure-proxy.rrzn.uni-hannover.de:3131 https_proxy=http://secure-proxy.rrzn.uni-hannover.de:3131 ftp_proxy=http://secure-proxy.rrzn.uni-hannover.de:3131 no_proxy=localhost,127.0.0.1,uni-hannover.de soap_use_proxy=on
Betriebssysteme
-
Linux
Die meisten Linux-Applikationen nutzen die Einstellungen in Umgebungsvariablen als Proxy-Definition (manchmal auch als „System-Proxy“ bezeichnet). Die Umgebungsvariablen können in der Shell oder in Skripten gesetzt werden, üblicherweise werden sie zentral in /etc/environment hinterlegt:
Die Variablen-Namen sind wohl sprechend und wenig überraschend, zusätzlich werden hier auch SOAP-Webservices über den Proxy geschickt. Das Beispiel nutzt den sehr restriktiven Secure-Proxy, der für Server sinnvoll ist. Die Auswahl eines anderen Proxys geschieht durch entsprechende Umsetzung des Kommentar-Zeichens # und entsprechende Anpassungen für https und ftp (Variablenersetzungen wie https_proxy=$http_proxy funktionieren hier nicht!).
Damit die gemachten Änderungen aktiv werden, muss man sich einmal vom System ab- und am System erneut anmelden. Das Kommando-Zeilen-Tool wget kann dann gut genutzt werden, um den Proxy zu testen und ggf. Proxy-Fehlermeldungen zu sehen:
wget --spider 'http://debian.org'
Dieser Befehl sollte die Nutzung des Proxy darlegen, ggf. detaillierter mit der zusätzlichen Option "-d", was auch Proxy- Header anzeigt. Wenn man hingegen die URL "http://4btc.cc" (eine bekannte C&C-Site des Zeus-Trojaners) herunterladen will, sollte der Proxy das unterbinden.
-
Debian / Ubuntu Paketverwaltung
Meist greift zwar die in /etc/environment gemachte Angabe für alle Skripte, Cron-Jobs, viele Anwendungen und eben auch die Paket-Verwaltung. Für die APT-basierte Paketverwaltung von Debian-Systemen kann aber eine explizite Angabe vorgenommen werden, indem eine Datei /etc/apt/apt.conf.d/10rrzn-proxy angelegt wird:
// /etc/apt/apt.conf.d/10rrzn-proxy // Updates ueber den Whitelist-Proxy Acquire::http::Proxy "http://secure-proxy.rrzn.uni-hannover.de:3131"; Acquire::https::Proxy "http://secure-proxy.rrzn.uni-hannover.de:3131"; Acquire::http::Proxy::ftp.rrzn.uni-hannover.de "DIRECT"; Acquire::http::Proxy::ftp.uni-hannover.de "DIRECT"; Acquire::http::Proxy::debian.rrzn.uni-hannover.de "DIRECT"; // gemaess man apt.conf funktioniert FTPoverHTTP-Proxy nur mit // Umgebungsvariable ftp_proxy und nicht durch Angabe hier //Acquire::ftp::Proxy "http://secure-proxy.rrzn.uni-hannover.de:3131"; Acquire::ftp::Proxy::ftp.rrzn.uni-hannover.de "DIRECT"; Acquire::ftp::Proxy::ftp.uni-hannover.de "DIRECT";
Müssen Quellen eingebunden werden die im Secure-Proxy keine Freigabe haben, so können diese über den filter-proxy genutzt werden. Hier am Beispiel von dl.gna.org:
// /etc/apt/apt.conf.d/11rrzn-proxy-extra
Acquire::http::Proxy::dl.gna.org "http://filter-proxy.rrzn.uni-hannover.de:3129";
Acquire::https::Proxy::dl.gna.org "http://filter-proxy.rrzn.uni-hannover.de:3129";
Hinweis: Wenn die Quelle unter sources.list mit http://www.dl.gna.org[…] eingetragen ist, muss das "www" auch in der Proxykonfiguration eingetragen werden (Acquire::http::Proxy::www.dl.gna.org[…])
-
Paketverwaltung bei Redhat Derivaten
Auch bei Redhat-basierten Systemen wie z.B. Scientific-Linux kann für die Paketverwaltung explizit ein Proxy angegeben werden:
# /etc/yum.conf
proxy=http://secure-proxy.rrzn.uni-hannover.de:3131
Die Konfiguration von Repositories über die "mirrorlist" Direktive ist nicht vom Proxy unterstützt, es ist daher notwendig alle benötigten (enabled=1) Repositories mittels baseurl zu konfigurieren:
# /etc/yum.conf.d/X.repo
[X] enabled=1 baseurl=http://ftp.uni-hannover.de/..
-
Windows
Unter Windows ist die Einstellung des Proxy grundsätzlich nicht so einfach, da Windows keine systemweite Proxy- Einstellung vorsieht:
- es sind verschiedene Bibliotheken einzustellen (WinINET & WinHTTP)
- die Einstellungen des Internet-Explorer (=WinINET) gelten nur je Benutzer und können nicht (genauer: nicht mehr seit IE10) für den ganzen PC und somit alle Nutzer gleichzeitig eingestellt werden.
Die Einstellungen können auf verschiedenen Wegen vorgenommen werden (vgl. Abschnitte unten), wobei wir zur Umgehung der o.g. Problematik einen Installer bereitstellen werden (noch in der Entwicklung/Test).
Konfiguration über Skript & Registry
WinHTTP
Diese Einstellungen müssen über eine als Administrator ausgeführte Eingabeaufforderung vorgenommen werden. Dazu dienen die Befehle netsh.exe winhttp ... proxy ...:
netsh.exe winhttp set proxy proxy-server="secure-proxy.rrzn.uni-hannover.de:3131" bypass-list=",*.uni- hannover.de" netsh.exe winhttp show proxy
In 64-Bit-System setzt man die 64-Bit-Einstellungen über %windir%\System32\netsh.exe, die 32-Bit-Einstellungen über %windir%\SysWOW64\netsh.exe .
WinINET
Über den Import einer .reg-Datei mit folgendem Inhalt (gilt für 32- und 64-Bit):
Regedit4
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"ProxyEnable"=dword:00000001
"ProxyServer"="http://secure-proxy.rrzn.uni-hannover.de:3131"
"ProxyOverride"="*.uni-hannover.de;localhost;" ; alternativ ginge auch ueber WPAD-URL (bei ProxyEnable=0): ;
"AutoConfigURL"="https://www.luis.uni-hannover.de/fileadmin/it_sicherheit/proxy/secure-proxy.pac"
Oder über die Einstellungen im Internet-Explorer: Internet-Optionen¬Verbindungen¬LAN-Einstellungen.
Mittels Group-Policy-Preferences
Eine (WinINET-) Proxy-Einstellung ist anders als früher nicht mehr über Gruppenrichtlinien möglich. Stattdessen müssen die Group-Policy-Preferenes (GPP) genutzt werden, die einer Einstellung von Nutzerprofilen entspricht (passend dazu, dass eben keine Maschinen-Einstellung des Proxy mehr möglich ist). Dafür im Gruppenrichtlinien-Objekt unter Benutzereinstellungen die Preferences und weiter Registry öffnen. Da dann die o.g. Registry-Schlüssel und -Werte eingeben.
Internet-Browser
-
Chrome / Chromium
Chrome verwendet normalerweise die Systemeinstellungen:
- Unter Windows die gleichen wie beim Internet-Explorer und Windows selbst. Geht man über das Chrome-Menü zu den erweiterten Einstellungen und dort Verbindungen/Proxy, so gelangt man zum üblichen Einstellungsfenster von Windows (vgl. Proxy-Nutzung unter Windows).
- Unter Linux werden die Werte aus den Umgebungsvariablen http_proxy etc. verwendet.
Proxy-Einstellung über Parameter:
chromium-browser --proxy-pac-url=https://www.luis.uni-hannover.de/fileadmin/it_sicherheit/proxy/filter-proxy.pac
Über die Änderung der Eigenschaften des Aufruf-Icons / Programmeintrags im Menü kann der Proxy permanent eingerichtet werden.
-
Edge
Microsoft’s Chrome basierter Edge Browser versteht die Chrome Optionen und kann über die UI konfiguriert werden.
-
Firefox
Im Burgermenü über Einstellungen nach "Proxy" suchen, dort können die Verbindungseinstellungen konfiguriert werden:
Weitere Programme und Tools
-
curl
curl --proxy web-proxy.rrzn.uni-hannover.de:3128 www.kernel.org/pub/linux/kernel/README
-
Docker
Hinweise zur Proxy-Nutzung in Docker finden Sie in der Docker-Dokumentation.
-
gem / ruby
gem install --proxy web-proxy.rrzn.uni-hannover.de sequenceserver
Alternativ statisch via /etc/gemrc oder ~/.gemrc:
http_proxy: web-proxy.rrzn.uni-hannover.de
-
git
Auch hier hat man die Wahl zwischen persistenten oder temporären Einstellungen.
via ~/.gitconfig
git config --global http.https://github.com.proxy web-proxy.rrzn.uni-hannover.de
~/.gitconfig:
[http] [http "https://github.com"] proxy = web-proxy.rrzn.uni-hannover.de
über das Environment
$ http_proxy=http://web-proxy.rrzn.uni-hannover.de:3128 https_proxy=http://web-proxy.rrzn.uni-hannover.de:3128 git clone github.com/the/project
als Argument
$ git -c http.proxy=http://web-proxy.rrzn.uni-hannover.de:3128 clone github.com/retspen/webvirtmgr.git webvirtmgr
-
pip / python
Unter Python/pip ist es leider etwas versionsabhängig ob der Parameter "proxy" respektiert wird, es kann sein, dass nur die Umgebungsvariablen http_proxy&https_proxy verwendet werden:
pip --proxy http://web-proxy.rrzn.uni-hannover.de:3128 install requests
Alternativ falls dies nicht funktioniert in /etc/environment temporär den Proxy setzen (Benötigt Logout, damit die Änderungen wirksam werden):
http_proxy=http://web-proxy.rrzn.uni-hannover.de:3128
https_proxy=http://web-proxy.rrzn.uni-hannover.de:3128
Dann:
pip install requests
Für Python3 / pip3 ist das analog umzusetzen.
-
rvm / ruby
Ruby/rvm Ergänzend zur offiziellen Dokumentation:
http_proxy=http://web-proxy.rrzn.uni-hannover.de:3128 https_proxy=http://web-proxy.rrzn.uni-hannover.de:3128 curl -sSL get.rvm.io | sudo -E bash -s stable
-
saltstack
Als Ergänzung zur offiziellen Dokumentation:
PROXY='http://web-proxy.rrzn.uni-hannover.de:3128' curl -o bootstrap-salt.sh -L -x "$PROXY" bootstrap.saltstack.com | sudo sh bootstrap-salt.sh -G -H "$PROXY" git
-
Teamviewer
Im grafischen Teamviewer-Programm auf Options¬General¬Network Settings¬Proxy Settings (ggf. Netzwerkeinstellungen¬Proxy Einstellungen) Im Proxy-Settings-Fenster dann Use manual proxy mit Proxy- IP=130.75.6.113, Port=3128 und ohne User-Name (Benutzername) und ohne Passwort.
-
wget
wget kann man Proxy Informationen via Parameter übergeben, unterstützt werden http_proxy, https_proxy sowie ftp_proxy. Permanent können die Parameter in der /etc/wgetrc sowie ~/.wgetrc gesetzt werden, wird aber nicht empfohlen.
wget -e use_proxy=yes -e https_proxy=http://web-proxy.rrzn.uni-hannover.de:3128 www.wikipedia.org
Appliances / Embedded-Geräte
-
Ricoh MFP Aficio MP C3502
Der http(s)-Zugriff auf das Internet ist nur für die @Remote-Funktionalität, d.h. die Wartungs- und Seitenzähler-Anbindung an Ricoh beim Leasing notwendig.
Über die WebGUI: Das Menu befindet sich unter Gerätemanagement¬Konfiguration¬RC
- Remote Communication Gate Proxy-Server aktivieren
- Proxy-Adresse secure-proxy.rrzn.uni-hannover.de
- Anschlussnummer 3131 Gate Proxy-Server.