NOTE: CentOS Enterprise Linux is built from the Red Hat Enterprise Linux source code. Other than logo and name changes CentOS Enterprise Linux is compatible with the equivalent Red Hat version. This document applies equally to both Red Hat and CentOS Enterprise Linux.
Linuxtopia - CentOS Enterprise Linux Rerenzhandbuch- FTP-Server
Red Hat Enterprise Linux wird mit zwei verschiedenen FTP-Servern ausgeliefert:
Red Hat Content Accelerator — ein Kernel-basierter Web-Server, der Hochleistungs-Web- und -FTP-Services bereitstellt. Da Geschwindigkeit hier Hauptentwicklungsziel war, besitzt dieser beschr�nkte Funktionalit�t und l�uft lediglich als anonymer FTP-Server. F�r weitere Informationen zur Konfiguration und Administration des Red Hat Content Accelerator, siehe die Dokumentation, die online unter https://www.redhat.com/docs/manuals/tux/ verf�gbar ist.
vsftpd — ein schneller, sicherer FTP-Daemon, der der bevorzugte FTP-Server f�r Red Hat Enterprise Linux ist. Der Rest dieses Kapitels betrifft haupts�chlicherweise vsftpd.
15.2.1. vsftpd
Der vsftpd oder Very-Secure-FTP-Daemon wurde vom Grund auf dazu entwickelt, um schnell, robust und was am allerwichtigsten ist, sicher zu sein. Seine F�higkeit eine gro�e Anzahl von Verbindugen effizient und sicher zu handhaben, ist der Grund, dass vsftpd der einzige mit Red Hat Enterprise Linux ausgelieferte Stand-Alone-FTP-Server ist.
Das von vsftpd verwendete Sicherheitsmodell hat drei prim�re Aspekte:
Strenge Trennung von privilegierten und nicht-privilegierten Prozessen — Separate Prozesse handhaben unterschiedliche Tasks, und jeder dieser Prozesse l�uft mit den minimalen f�r diesen Task ben�tigten Privilegien.
Tasks, die erh�hte Privilegien ben�tigen, werden von Prozessen mit den minimal ben�tigten Privilegien gehandhabt — Durch den wirksamen Einsatz von Kompatibilit�ten, die sich in der libcap-Bibliothek befinden, k�nnen Tasks, die normalerweise vollst�ndige Root-Privilegien ben�tigen, sicherer von einem weniger privilegierten Prozess ausgef�hrt werden.
Die meisten Prozesse werden in einem chroot-Gef�ngnis ausgef�hrt — Wann immer m�glich werden Prozesse in das gemeinsam benutzte Verzeichnis umgerootet; dieses Verzeichnis wird dann als chroot-Gef�ngnis angesehen. Wenn zum Beispiel das Verzeichnis /var/ftp/ das prim�re Shared-Directory darstellt, wird /var/ftp/ durch vsftpd dem neuen Root-Verzeichnis, als / bekannt, neu zugeordnet. Dies sch�tzt jegliche Verzeichnisse, die sich nunmehr nicht unter dem neuen Root-Verzeichnis befinden, vor potentiellen, mutwilligen Hacker-Attacken.
Die Verwendung dieser Sicherheitspraktiken hat den folgenden Effekt auf die Art in der vsftpd Anfragen handhabt:
Der Elternprozess l�uft mit den am wenigsten ben�tigten Privilegien ab. — Der Elternprozess bestimmt den Level an ben�tigten Privilegien dynamisch, um das Sicherheitsrisiko zu minimieren. Kindprozesse sind f�r ein direktes Zusammenspiel mit den FTP-Clients zust�ndig und laufen mit so wenig wie m�glich bis hin zu fast gar keinen Privilegien ab.
Alle Operationen, die erh�hte Privilegien ben�tigen, werden von einem kleinen Elternprozess gehandhabt. — Ganz wie Apache HTTP Server, startet vsftpd unprivilegierte Kindprozesse, um eingehende Verbindungen zu handhaben. Dies erlaubt es dem privilegierten Elternprozess so klein wie m�glich zu sein und nur relativ wenige Aufgaben zu handhaben.
Keinen der Anforderungen von unprivilegierten Kindprozessen wird vom Elternprozess vertraut. — Kommunikation mit Kindprozessen geschieht �ber Sockets und die G�ltigkeit jeglicher Information eines Kindprozesses wird �berpr�ft, bevor darauf reagiert wird.
Die meiste Interaktion mit FTP-Clients wird von unprivilegierten Kindprozessen in einem chroot-Gef�ngnis gehandhabt. — Da diese Kindprozesse unprivilegiert sind und lediglich auf das gemeinsame Verzeichnis Zugriff haben, erlaubt ein abgest�rzter Prozess einem Angreifer lediglich Zugriff auf die gemeinsamen Dateien.