Bearbeiten von „Vsftpd Instanzen mit xinetd“
Aus UUGRN
Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden.
Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und speichere dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.
Aktuelle Version | Dein Text | ||
Zeile 1: | Zeile 1: | ||
Dieser Artikel beschreibt, wie man mehrere [[vsftpd]] Instanzen (VirtualHosts) mit individueller Konfiguration mittels [[xinetd]] betreiben kann. | Dieser Artikel beschreibt, wie man mehrere [[vsftpd]] Instanzen (VirtualHosts) mit individueller Konfiguration mittels [[xinetd]] betreiben kann. | ||
− | + | Das Beispiel wurde unter debian wheezy getestet. | |
− | Das | ||
__TOC__ | __TOC__ | ||
Zeile 7: | Zeile 6: | ||
== Ziel == | == Ziel == | ||
Ziel ist es, mehrere, getrennt voneinander verwaltbare FTP-Server auf einem Host zu betreiben. Dabei kann jeder FTP-Server eine komplett eigene Benutzerverwaltung haben und vollständig individuell konfiguriert werden. | Ziel ist es, mehrere, getrennt voneinander verwaltbare FTP-Server auf einem Host zu betreiben. Dabei kann jeder FTP-Server eine komplett eigene Benutzerverwaltung haben und vollständig individuell konfiguriert werden. | ||
− | |||
− | |||
== Aufbau == | == Aufbau == | ||
− | [[xinetd]] ist sehr gut darin, bestimmte Services auf mehr oder weniger beliebigen Ports oder IP-Adressen zu betreiben. Der jeweilige Server, der mittels xinetd aufgerufen wird wird dabei pro tcp-Session neu aufgemacht, d.h. innerhalb eines Prozesses existieren nur die Daten, die für diese individuelle Session benötigt werden. Der jeweilige Service (zB vsftpd) muss nicht beim Booten gestartet werden und darf auch nicht auf irgendwelchen Ports lauschen sondern muss die Betriebsart "inetd" unterstützen (zB vsftpd, sshd -i, ...). Idealerweise unterstützt der aufgerufene Service per Parameter eine individuelle Konfigurationsdatei zu laden (sshd -i -f /path/to/sshd_foo.conf, vsftpd /path/to/vsftpd_foo.conf) | + | [[xinetd]] ist sehr gut darin, bestimmte Services auf mehr oder weniger beliebigen Ports oder IP-Adressen zu betreiben. Der jeweilige Server, der mittels xinetd aufgerufen wird wird dabei pro tcp-Session neu aufgemacht, d.h. innerhalb eines Prozesses existieren nur die Daten, die für diese individuelle Session benötigt werden. Der jeweilige Service (zB vsftpd) muss nicht beim Booten gestartet werden und darf auch nicht auf irgendwelchen Ports lauschen sondern muss die Betriebsart "inetd" unterstützen (zB vsftpd -i, sshd -i, ...). Idealerweise unterstützt der aufgerufene Service per Parameter eine individuelle Konfigurationsdatei zu laden (sshd -i -f /path/to/sshd_foo.conf, vsftpd -i /path/to/vsftpd_foo.conf) |
xinetd kann mehrere Services unabhängig voneinander verwalten. | xinetd kann mehrere Services unabhängig voneinander verwalten. | ||
Zeile 96: | Zeile 93: | ||
</pre> | </pre> | ||
− | ; Wichtig: Aufgrund von ''chroot_local_user'' müssen die Verzeichnisse ''/ftp/{foo,bar}/FTP/'' dem User root gehören, darunter empfiehlt sich zB ein Unterverzeichnis, was für den jeweiligen | + | ; Wichtig: Aufgrund von ''chroot_local_user'' müssen die Verzeichnisse ''/ftp/{foo,bar}/FTP/'' dem User root gehören, darunter empfiehlt sich zB ein Unterverzeichnis, was für den jeweiligen User (user_foo oder user_bar) schreibbar ist, zB /ftp/{foo,bar}/FTP/pub/ |