ProxyServer
Ein Proxy oder Proxy-Server (von engl. proxy representative = Stellvertreter, bzw. lat. „proximus“ = „Der Nächste“) ist ein Dienstprogramm für Computernetze, das im Datenverkehr vermittelt. Es macht den Datentransfer effizienter (weniger Netzbelastung durch große Datenmengen) bzw. schneller, kann aber auch durch Einsatz von Zugriffskontrollmechanismen die Sicherheit erhöhen.
Oft wird zur Zugriffsbelastungsminderung vor einem Webserver der sog. Reverse-Proxy eingesetzt.
Links
Proxy-Serversoftware
- Squid - der wohl bekannteste Proxy-Server unter Linux
- Oops („written for performance“, lightweight)
- TinyProxy - einfacher zu konfigurieren („fast & lightweight HTTP proxy“)
- DeleGate: unterstützt viele Protokolle, Anfragen je nach Client auf verschiedene Zeile leiten, Zusammenfügen zu einem (virtuellen Server)
Man muss man einen eigenen DNS-Server aufsetzen wenn der DNS-Server des Providers hinter dem Proxy steht.
FTP (only)-Proxy
- ftp-proxy
- frox
HTTP Proxies
- Pound - Reverse Proxy und Load-Balancer
POP3/MAP4 (only)-Proxy
- Perdition: POP3 and IMAP4 Proxy server
- Imapproxy
- Cyrus Aggregator
SIP-Proxies
SSL-Proxies
Wenn man auch den verschlüsselten Datenverkehr auf Viren etc. überprüfen will, muss man einen transparenten SSL oder TLS-Proxy einrichten. Dazu wird auf dem SSL-Proxy ein Zertifikat erstellt und dies auf den Clients importiert. Dann kommt nur noch eine Fehlermeldung (dass der Domänenname nicht überein stimmt) die der Anwender bestätigen muss. Alternativ kann der SSL-Proxy eine eigene Zertifizierungsstelle betreiben und dynamisch Zertifikate für die abgerufenen Webseiten erzeugen die dann ohne Warmnung vom Client angezeigt werden, sobald die CA vorher beim Client installiert worden ist. Repressive Regierungen benutzen Zwischenzertifikate anerkannter Zertifizierungsstellen um ihre Bürger auszuspähen. Das fällt ohne Zertikat-pinning erstmal nicht weiter auf.
Proxy in Windows einstellen
netsh netsh>winhttp netsh>winhttp>set proxy proxy-server="PROXY-SERVER-FQDN:3128" bypass-list="localhost; 127.0.0.1"
Proxy zurücksetzen:
netsh netsh>winhttp netsh winhttp>reset proxy
Proxy in Linux einstellen
Mal abgesehen von diversen Möglichkeiten einen Proxyserver nur für einige Anwendungen einzustellen (z.B. nur im Browser) kann man auch auf Betriebssystemebene den Proxy mitteilen:
export http_proxy="http://www-proxy.t-online.de:8080" export https_proxy="http://ftp-proxy.t-online.de:8080" export ftp_proxy="http://ftp-proxy.t-online.de:8080" export no_proxy="localhost,127.0.0.1"
Vor der Benutzung einfach erneut einloggen oder die Variablen mit
source /etc/environment ; export http_proxy ftp_proxy no_proxy
in die aktuelle Shell einlesen.
Proxy ohne ftp-Support
in
man sources.list
steht:
It is possible to proxy FTP over HTTP by setting the ftp_proxy environment variable to a http url - see the discussion of the http method above for syntax. You cannot set this in the configuration file and it is not recommended to use FTP over HTTP due to its low efficiency.
man kann also einfach den folgenden Befehl eingeben:
export ftp_proxy="http://ftp-proxy.t-online.de:8080"