Die Kontrolle des Zugriffs zu Netzwerk-Services ist eine der wichtigsten Sicherheitsaufgaben, denen sich der Administrator stellen muss. Glücklicherweise gibt es unter Red Hat Linux eine Reihe von Tools, welche genau dies tun. Eine iptables-basierte Firewall, zum Beispiel, filtert alle unerwünschten Netzwerk-Pakete im Netzwerk-Stack des Kernel heraus. Für Netzwerk-Services, welche davon Verwendung machen, fügt TCP Wrapper eine zusätzliche Schutzschicht hinzu, indem dieser definiert, welchen Hosts es erlaubt ist zu "wrapped" Netzwerk-Services zu verbinden, und welchen nicht. Einer dieser "wrapped" Netzwerk-Services ist xinetd super server. Dieser Service wird Super-Server genannt, da dieser Verbindungen zu einem Subnet von Netzwerk-Services kontrolliert und Zugriffskontrolle weiter feinabstimmt.
Abbildung 15-1 ist eine grundlegende Illustration welche zeigt, wie diese Tools zusammen arbeiten um Netzwerk-Services zu schützen.
Dieses Kapitel beschäftigt sich mit der Rolle von TCP Wrapper und xinetd in der Zugriffskontrolle zu Netzwerk-Services und in wie diese Tools verwendet werden können um das Management von sowohl Logging, als auch Verwendbarkeit zu verbessern. Für eine Diskussion der Verbindung von Firewall und iptables, siehe Kapitel 16.
Das TCP Wrappers Paket (tcp_wrappers) ist unter Red Hat Linux per Default installiert und stellt Host-basierte Zugriffskontrolle zu Netzwerk-Services bereit. Die wichtigste Komponente in diesem Paket ist die /usr/lib/libwrap.a-Bibliothek. In allgemeinen Begriffen, ist ein "TCP wrapped" Service einer, der gegen die libwrap.a-Bibliothek kompiliert wurde.
Wenn ein Verbindungsversuch zu einem "TCP wrapped" Service eingeleitet wird, wird der Service zuerst die Hosts-Zugriffs-Dateien (/etc/hosts.allow und /etc/hosts.deny) untersuchen, um festzustellen, ob der Client-Host erlaubt ist zu verbinden. Dieser wird dann den syslog-Daemon (syslogd) verwenden, um den Namen des anfordernden Hosts und Service entweder zu /var/log/secure oder zu /var/log/messages zu schreiben.
Wenn es einem Client-Host erlaubt ist zu verbinden, gibt TCP Wrapper die Kontrolle über die Verbindung zum angeforderten Service und wird nicht mehr in die Kommunikation zwischen Client-Host und Server eingreifen.
Zusätzlich zu Zugriffskontrolle und Logging, TCP Wrapper kann Befehle aktivieren um mit dem Client zu interagieren, bevor er die Kontrolle der Verbindung zum angeforderten Netzwerk-Service übergibt oder diesen ablehnt.
Da TCP Wrapper ein wertvoller Zusatz zum Arsenal jeden Administrators Sicherheits-Tools sind, sind die meisten Netzwerk-Services unter Red Hat Linux gegen die libwrap.a gebunden. Einige dieser Anwendungen sind /usr/sbin/sshd, /usr/sbin/sendmail und /usr/sbin/xinetd.
![]() | Anmerkung | |
---|---|---|
Um festzustellen, ob die Binärdatei eines Netzwerk-Service gegen libwrap.a gebunden ist, geben Sie den folgenden Befehl als root ein:
Ersetzen Sie <binary-name> mit dem Namen der Binärdatei des Netzwerk-Service. |
TCP Wrappers bietet zwei grundlegende Vorteile im Vergleich zu anderen Kontrollmethoden für Netzwerkdienste:
Der sich verbindende Client bemerkt den Einsatz von TCP Wrappers nicht — Zugelassene Benutzer bemerken keinen Unterschied und Angreifer erhalten niemals zusätzliche Informationen über den Grund dafür, warum ihr Verbindungsversuch fehlgeschlagen ist.
Zentralisiertes Management von mehreren Protokollen — TCP Wrappers arbeiten unabhängig vom Netzwerkdienst, den sie schützen. Dies erlaubt es mehreren Server-Applikationen sich eine gemeinsame Gruppe von Konfigurationsdateien zu teilen, was ein vereinfachtes Management zur Folge hat.
Zurück | Zum Anfang | Vor |
Zusätzliche Ressourcen | Zum Kapitelanfang | TCP Wrappers Konfigurationsdateien |