Proxy Server als zentrale Kontrollinstanz Michael Buth IT Berater
Transcrição
Proxy Server als zentrale Kontrollinstanz Michael Buth IT Berater
Proxy Server als zentrale Kontrollinstanz Michael Buth IT Berater web: http://www.mbuth.de mail: [email protected] Motivation • Zugangskontrolle und Überwachung des Internetzugangs in öffentlichen und privaten Bildungseinrichtungen • Sperren und Entsperren des Internetzugang -> z.B. während Prüfungen und Klausuren etc. • Zensur der Inhalte • Filter für Werbung • Modularer Aufbau ermöglicht Flexibilität und Skalierbarkeit „Module“ Proxy Server • Ein Proxy (aus dem Englischen übersetzt: Stellvertreter) ist ein Dienstprogramm, das im Datenverkehr vermittelt. • Effizienzsteigerung des Datentransfers • Erhöhung der Sicherheit durch Kontrolle Funktionen von Proxy Servern • Funktion als Zwischenspeicher (Cache), der zwischen Webbrowser und Webserver vermittelt. • Anfragen werden schneller beantwortet • Die Netzlast verringert sich • Neben der Funktion als Cache kann ein Proxy auch z.B. auch als Application-Level-Proxy, Circuit-Level-Proxy, Filter, Zugriffssteuerung und Anonymisierungsdienst eingesetzt werden. Infrastruktur Squid • Squid ist ein gut skalierbarer Open Source Proxyserver. • Unterstützt werden die Netzwerkprotokolle HTTP/ HTTPS und FTP über HTTP. • In diesem Szenario wird Squid als transparenter Proxy mit diversen Filterfunktion eingesetzt. Netfilter Firewall • Netfilter ist Bestandteil des Linux-Kernels und bildet damit das Kernstück einer Firewall auf Linux-Basis. • Als Dienstprogramm zur Konfiguration von Netfilter kommt iptables und als GUI fwbuilder zum Einsatz. • Der Paketfilter wird u.a. verwendet, um das Konzept einer zweistufigen Firewall umzusetzen. • Die Paketfilterung kann zudem durch die Funktionen NAT und Masquerading ergänzt werden. Transparent Web Cache • Vorteile: • Die Konfiguration der Clients entfällt. • Es herrscht ein "Proxyzwang“ für http Anfragen. • Nachteile: • User-Authentifierung ist nicht möglich • Unterstützung nur für HTTP • Eine Firewallregel leitet Anfragen an den Proxy weiter: !/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 Transparent Web Cache • Die Squid Konfiguration muss in der Datei /etc/squid/ squid.conf angepasst werden:! ! ! !http_accel_host virtual! ! http_accel_host 80 ! !http_accel_host_with_proxy on! ! http_accel_host_header on! AntiViren Internet-Gateway • Diverse Anbieter und Produkte • Freie Programme wie z.B. ClamAV • Kommerzielle Produkte für Linux z.B. von Trend Micro oder Avira • Wünschenswerte Features • • • • Sollte als HTTP und FTP Proxy arbeiten Scan des HTTP- und FTP-Datenverkehr Zentrale webbasierte Verwaltungskonsole Automatische Updates AntiViren Internet-Gateway • Der Squid Proxy arbeitet als primärer Proxy (Port 3128) und muss seine Anfragen an den Proxy des Virenscanners (Port 8080) weiterleiten. • Auch hier muss die Squid Konfiguration in der Datei /etc/ squid/squid.conf angepasst werden:! !! !cache_peer localhost parent 8080 3130 default no-query! !#ACLs! !never_direct allow all! SquidGuard • Filter, Redirector und Access Controller Plugin für Squid • Prüft URLs und Zugriffsbedingungen • Sperrung des Internetzugangs in Abhängigkeit von Uhrzeit und verwendetem Rechner • Ersetzen von unerwünschten Seiten durch eine eigene Webseite • Verhinderung des Zugriffs bestimmter Benutzer oder Rechner auf bestimmte Webseiten • Zensieren von Webinhalten • Werbe-Filter • Black Lists und Reguläre Ausdrücke für URLs SquidGuard • Damit Squidguard seine Arbeit aufnehmen kann, muss wiederum die Squid Konfiguration angepasst werden: !redirect_program /usr/bin/squidguard -c /etc/squid/squidguard.conf! • Ein kleines CGI-Skript sorgt bei Verletzung der Zugriffsregeln dafür, dass unmittelbar eine E-Mail an den Webmaster gesendet wird und der Benutzer einen entsprechenden Hinweis in seinem Webbrowser erhält: Calamaris • Analyse- und Reportprogramm für Log-Dateien von ProxyServern • Der Report kann u.a. Informationen über die IP-Adresse des Clients, das Login des Users, den Zeitpunkt, die URL etc. enthalten • Statistiken geben Auskunft über Auslastung, Maximalwerte und Leistungsfähigkeit der Proxy-Servers • Statistiken können als ASCII- oder als HTML-Bericht dargestellt und z.B. per E-Mail versendet werden Webmin Squidlogbuch • Squidlogbuchauswertung ist ein kleines Modul für Webmin • Webmin ist ein web-basiertes Interface für die UNIX SystemAdministration • Squidlogbuch wertet das Access-Logfile des Squid Proxy Servers aus Webbased Client Controll • Webbasiertes grafisches Interface für die Zugangskontrolle einzelner Clients, einzelner Räume oder Standorte zum Internet • Optional zeitgesteuerte Zugangskontrolle • Auch hier bedarf es einer Squid Anpassung: !! !#ACLs! !acl deny_hosts src "/etc/squid/warp9/deny_hosts.txt"! Referenzen • • • • • • • • Netfilter: http://www.netfilter.org Squid: http://www.squid-cache.org SquidGuard: http://www.squidguard.org Calamaris: http://cord.de/tools/squid/calamaris/Welcome.html.de Webmin: http://www.webmin.com Trend Micro: http://de.trendmicro-europe.com Webbased Client Controll: http://warp9.de Transparent Web Cache: http://www.vpngate.de Proxy Server als zentrale Kontrollinstanz Michael Buth IT Berater web: http://www.mbuth.de mail: [email protected]