DynDNS-FTP-Server hinter einem Linux-Router einrichten
Inhalt
Worum geht es überhaupt?
Die Datenmengen werden immer größer, und sehr viele Computerbenutzer
haben einen DSL-Zugang zur Verfügung. Was liegt da näher, als die
neue bebilderte Beamer-Präsentation oder den Film vom letzten Urlaub
über das Internet an Arbeitskollegen oder Freunde zu verteilen?
Bei diesem Vorhaben steht man jedoch schnell vor einem Problem: Wie
soll man die
großen Datenmengen von einem Computer zum anderen transportieren? Das
Medium E-Mail erweist sich dafür als gänzlich ungeeignet. Denn zum
einen
werden Daten durch die für den E-Mail-Versand nötige Kodierung noch
deutlich vergrößert, und zum anderen liegt die maximal erlaubte
E-Mail-Größe bei den meisten E-Mail-Providern bei 1-5 MB.
Die Lösung bringt eine Rückbesinnung auf ein vergleichsweise altes
Internet-Protokoll, nämlich auf FTP. FTP steht für "File Transfer
Protocol". Es handelt sich dabei also um ein Protokoll, das speziell
für
die Übertragung von Dateien entwickelt wurde. Noch heute existieren
zahlreiche
FTP-Server im Internet, auf denen z.B. die ISO-Images der aktuellen
Linux-Distributionen
zum Download bereit liegen.
Diese Anleitung beschreibt die Einrichtung eines lokalen FTP-Servers,
wobei ich von
folgendem weit-verbreiteten Rechner-Setup ausgehe:
+----------+ +--------------+ +--------+ +-----------------------+
| Internet |------| Linux-Router |------| Switch |------| Linux-Workstation/LAN |
+----------+ +--------------+ +--------+ +-----------------------+
Da häufig ein relativ alter PC mit kleiner Festplatte als Router zum
Einsatz
kommt, ist es oft wünschenswert, den FTP-Server auf der eigentlichen
Workstation
(oder einem "großen" Server im lokalen Netz) zu betreiben. Daher werde
ich
dieses Vorgehen im folgenden näher beschreiben. Als Grundlage dient
Debian
Woody.
Hinweis: Soweit nicht anders erwähnt, müssen alle
Schritte
in dieser Anleitung als Superuser
root ausgeführt werden, da es
sich um administratorische Arbeiten handelt, die weitreichende Rechte
erfordern. Nach Beendigung der Konfiguration darf man aber nicht
vergessen,
sich wieder als normaler User am System anzumelden!
-> Nach oben
Eingesetzte Software
-> Nach oben
DynDNS sorgt für Erreichbarkeit aus dem Internet
Bei dem im Internet verwendeten Protokoll
TCP/IP wird
jeder
angeschlossene Rechner eindeutig über seine jeweilige IP-Adresse
angesprochen. Da es für Menschen deutlich einfacher ist, sich anstelle
einer
Zahl einen Namen zu merken (also beispielsweise
www.heise.de
anstelle
von
193.99.144.71), existiert der sogenannte
Domain
Name Service,
kurz
DNS. Viele DNS-Server, die über das gesamte Internet
verteilt sind,
geben auf Anfrage die zugehörige numerische IP-Adresse eines solchen
DNS-Hostnamens
zurück.
Server, die fest ans Internet angebunden sind, besitzen eine sogenannte
statische
IP-Adresse, die sich im Normalfall nicht ändert. Wer aber keine
Standleitung hat, sondern sich über Modem, ISDN oder DSL ins Internet
einwählt (
Dialup-Zugang), der wird in aller Regel bei
jeder
Einwahl eine wechselnde, sogenannte
dynamische IP-Adresse
zugewiesen bekommen. Wie also soll der Freund wissen, unter welcher
IP-Adresse man
gerade zu erreichen ist?
Die Lösung für dieses Problem sind sogenannte
Dynamic-DNS-Dienste,
die es erlauben, die Zuordnung von DNS-Hostnamen zu numerischer
IP-Adresse jeweils
zeitnah zu aktualisieren. Es gibt verschiedene dieser Dienste, die für
den privaten
Gebrauch häufig kostenlos nutzbar sind. Im folgenden werde ich die
Nutzung eines
wohl der bekanntesten dieser Dienste, nämlich
DynDNS (http://www.dyndns.org) beschreiben.
Zuerst einmal muß man sich bei DynDNS kostenlos anmelden. Das geschieht
unter
http://www.dyndns.org/account/create.html. Nach der
Anmeldung erhält man eine
Mail mit einem Bestätigungslink, dem man folgen muß.
Anschließend kann man sich dann unter
http://www.dyndns.org/services/dyndns/add.html
einloggen und die gewünschte
Subdomain nach dem Muster
wunschname.dyndns.org
auswählen.
Als "
IP address" wird diejenige IP-Adresse angezeigt, die
DynDNS
beim Besuch der Seite erkannt hat, es sollte sich dabei um die
(dynamische) IP-Adresse
handeln, mit der man im Internet unterwegs ist.
In diesem Auswahlfenster sollte man auch die Option "
Enable
Wildcard"
aktivieren. Sie besagt, daß auch die Hostnamen
xyz.wunschname.dyndns.org
auf die jeweilige IP-Adresse aufgelöst werden - ideal um z.B. ein
kleines LAN
mit FQDNs (
Fully Qualified Domain Names) zu versorgen!
Dann noch auf
Add Host klicken, und der jeweilige Hostname
steht schon mit der
von DynDNS festgestellten IP-Adresse für DNS-Abfragen zur Verfügung.
Konkret heißt das in diesem Beispiel, daß jede Anfrage auf
wunschname.dyndns.org auf die eigene
dynamische IP-Adresse auflöst.
Spätestens bei der nächsten Internet-Einwahl steht man jedoch vor einem
Problem: Durch die zwischenzeitliche Verbindungstrennung hat sich die
IP-Adresse geändert - wie erfährt DynDNS jetzt davon, daß
wunschname.dyndns.org
nicht länger auf z.B.
80.133.26.238, sondern jetzt auf
80.133.20.15 verweisen soll?
Damit man sich nicht jedesmal nach der Einwahl bei DynDNS einloggen
muß, kann man
ein kleines Programm benutzen, daß automatisch die jeweils aktuelle
IP-Adresse
bei DynDNS einträgt. Es gibt eine Vielzahl solcher Programme, ich habe
mich für
ddclient entschieden.
Das Programm muß auf dem Router installiert werden. Dazu gibt man
einfach den Befehl
apt-get install ddclient
ein. Das Programm ddclient ist ein Perl-Skript, das für seine
Ausführung natürlich
eine installierte Perl-Umgebung benötigt. Gegebenenfalls werden also
über die
Abhängigkeiten des Paketes weitere Pakete nachinstalliert; falls auf
dem Rechner Perl noch
nicht installiert war, können dies durchaus einige sehr große Pakete
sein!
Nach der Installation öffnet sich ein Konfigurationsdialog, den man
auch
später jederzeit mit dem Befehl
dpkg-reconfigure ddclient
erneut
aufrufen kann. Folgendes ist einzustellen:
Choose dynamic DNS service provider: www.dyndns.org
Your dyndns fully qualified domain names: wunschname.dyndns.org
Username for dynamic DNS service: Benutzername, mit dem man sich registriert hat
Password: Das jeweilige Passwort
Interface used for dynamic DNS service: Das verwendete Interface ist abhängig von der
benutzten Einwahlmethode. Bei Einwahl über Modem
oder DSL ist hier in aller Regel ppp0 einzugeben, bei
ISDN-Einwahl ist es meistens ippp0
Hinweis: Diese Daten werden in der Datei
/etc/ddclient.conf
gespeichert, darunter
auch das Passwort im Klartext. Man sollte daher darauf achten, daß die
Standardrechte
(nämlich
0600 root:root erhalten bleiben!
In der Datei
/etc/default/ddclient wird das genaue
Verhalten von ddclient festgelegt.
Dort sorgen die Einträge
run_ipup="true"
run_daemon="false"
dafür, daß ddclient automatisch bei jeder Internet-Einwahl aufgerufen
wird und die
neue IP-Adresse an DynDNS übermittelt. Ein erfolgreiches Update der
IP-Adresse wird von
ddclient folgendermaßen im Syslog (
/var/log/syslog)
vermerkt:
May 2 11:15:29 pluto ddclient[550]: SUCCESS: updating wunschname.dyndns.org:
good: IP address set to 80.133.26.238
Hinweis: DynDNS behält es sich vor, registrierte Hostnamen nach 35
Tagen ohne Update der
IP-Adresse aus der Datenbank zu löschen. Man sollte also dafür sorgen,
daß der
eigene Rechner oft genug online ist, um diese Löschung zu vermeiden!
-> Nach oben
FTP-Proxy auf dem Router leitet alles weiter
Dank DynDNS kann jetzt trotz dynamischer IP-Adresse problemlos auf den
Router
zugegriffen werden. Aber noch würde ein Zugriffsversuch auf
ftp://wunschname.dyndns.org lediglich eine
Fehlermeldung liefern,
denn noch läuft ja kein FTP-Server.
Da der eigentliche FTP-Server auf einem der Clients im internen Netz
laufen
soll und nicht auf dem Router, benötigt man auf dem Router ein
Programm,
das alle Anfragen von "außen" (aus dem Internet) an diesen Client
weiterleitet und im Gegenzug auch die Antworten weitergibt. Dazu eignet
sich
sehr gut das Programm FTP-Proxy, wie der Name auch schon vermuten
läßt.
Unter Debian wird es einfach installiert mittels
apt-get install ftp-proxy
Anschließend muß es noch konfiguriert werden. Dies geschieht in der
Datei
/etc/ftp-proxy.conf. Wichtig ist vor allem die
Angabe, auf
welchen Rechner eingehende Verbindungen von außen weitergeleitet werden
sollen, d.h. auf welchem Rechner der "eigentliche" FTP-Server läuft.
Dazu dient der Eintrag
DestinationAddress 192.168.1.6
(Die IP-Adresse muß natürlich entsprechend angepaßt werden.)
Weiterhin sinnvoll:
Port ftp
ServerType standalone
Da es sich um einen aus dem Internet zugänglichen Dienst handelt,
sollte man
auf keinen Fall das Loggen von Zugriffen vergessen. Die dafür
zuständige
Datei kann ebenfalls in
/etc/ftp-proxy festgelegt werden:
LogDestination /var/log/ftp-proxy/ftp-proxy.log
Das Verzeichnis
/var/log/ftp-proxy muß natürlich vorher
mittels
mkdir /var/log/ftp-proxy
angelegt worden sein. Damit die Logdatei von FTP-Proxy nicht irgendwann
überläuft, kann man Logrotate dazu nutzen, um diese Datei in
regelmäßen Abständen zu archivieren und zu löschen.
Dazu legt man einfach eine neue Datei
/etc/logrotate.d/ftp-proxy
an,
die folgenden Inhalt besitzt:
/var/log/ftp-proxy/ftp-proxy.log {
weekly
rotate 5
compress
missingok
}
(Logrotate gehört eigentlich zur Debian-Standardinstallation. Sollte es
einmal nicht installiert sein, hilft ein
apt-get install
logrotate).
Da ein aus dem Internet erreichbarer Dienst immer ein potentielles
Sicherheitsrisiko darstellt, ist es sinnvoll, daß FTP-Proxy
nur dann läuft, wenn man auch Dateien im Internet zur Verfügung stellen
möchte. Beispielsweise kann man FTP-Proxy wieder stoppen, wenn
der Arbeitskollege die Präsentation heruntergeladen hat.
Eine einfache Möglichkeit um das Starten von Diensten zu verwalten, ist
das Programm rcconf. Wie immer unter Debian installiert man es durch
ein
apt-get install rcconf
Danach kann man es durch den Befehl
rcconf aufrufen. Die
Bedienung ist sehr simpel: Mittels der Pfeiltasten wählt man einen
Dienst aus und
kann dann mit der Leertaste entscheiden, ob er gestartet werden soll
(Markierung mit "
[*]") oder nicht. Anschließend werden -
je
nach Auswahl - die entsprechenden Start- und Stop-Links unter
/etc/rc?.d angelegt bzw. gelöscht. Auf diese
Weise kann man
elegant unterbinden, daß z.B. FTP-Proxy beim nächsten Systemstart
gestartet wird.
Alle diese Änderungen werden natürlich erst beim nächsten
Runlevel-Wechsel bzw. Neustart des Systems wirksam. Da man ein
Linux-System ja
bekanntlich selten neu booten muß, sollte man daher den aktuell
laufenden
Prozeß mit einem
/etc/init.d/ftp-proxy stop
per Hand beenden.
Natürlich ist die Anwendung von rcconf nicht auf FTP-Proxy beschränkt,
sondern es kann auch für alle anderen Serverdienste genutzt werden, die
nur temporär benötigt werden!
Abschließend möchte ich noch kurz auf eine weitergehende Nutzung von
FTP-Proxy eingehen, die über die eingangs beschriebene Situation
hinausgeht:
Den Betrieb mehrerer FTP-Server im internen Netz, die alle aus dem
Internet
zugänglich sein sollen.
Eine Beispielskizze dazu:
+----------+ +--------------+ +--------+ +--------------+
| Internet |------| Linux-Router |------| Switch |------| FTP-Server 1 |
| | | 192.168.1.1 | | | | 192.168.1.6 |
+----------+ +--------------+ +---+----+ +--------------+
|
| +--------------+
+-----------| FTP-Server 2 |
| 192.168.1.4 |
+--------------+
In diesem Beispiel existieren also im internen Netz zwei FTP-Server mit
den
internen IP-Adressen
192.168.1.6 und
192.168.1.4.
In der weiter oben beschriebenen Konfiguration von FTP-Proxy wird jede
FTP-Anfrage aus dem Internet auf den FTP-Server 1 (
192.168.1.6)
weitergeleitet. FTP-Proxy erlaubt es aber auch, daß in der Anfrage aus
dem Internet explizit angegeben werden kann, auf welchen internen
FTP-Server zugegriffen werden soll. Dazu sind folgende Einträge in der
Datei
/etc/ftp-proxy.conf nötig:
AllowMagicUser yes
UseMagicChar %
Jetzt kann der Zielserver im Benutzernamen folgendermaßen angegeben
werden:
Benutzername%Zielserver
Achtung: Benutzt man die Kurzschreibweise
ftp://Benutzername@Hostname
(also z.B.
ftp://michael@wunschname.dyndns.org) im
Browser, so
muß man das
% durch ein
%25 ersetzen! Die
entsprechende
URL könnte also folgendermaßen aussehen:
ftp://michael%25192.168.1.4@wunschname.dyndns.org
Damit loggt sich der Benutzer
michael über FTP auf dem
internen Server
192.168.1.4 ein, der über den Gateway
wunschname.dyndns.org im Internet zugänglich
ist. Mit folgenden
beiden Befehlen landet man hingegen auf dem FTP-Server des internen
Rechners
192.168.1.6:
ftp://michael@wunschname.dyndns.org
ftp://michael%25192.168.1.1@wunschname.dyndns.org
Die erste Zeile funktioniert, da FTP-Proxy ja - wie weiter oben
eingestellt - jede
eingehende FTP-Anfrage nach
192.168.1.6 weiterleitet.
Hinweis: Möchte man nicht nur den Benutzernamen sondern auch das
Passwort in
der URL übermitteln, so dient dazu folgende Syntax:
ftp://Username:Passwort@wunschname.dyndns.org
ftp://Username%25InternerServer:Passwort@wunschname.dyndns.org
-> Nach oben
Pure-FTPd als eigentlichen FTP-Server einrichten
Nachdem jetzt die erforderliche Vorarbeit auf dem Router geleistet ist,
gilt
es "nur" noch den eigentlichen FTP-Server einzurichten. Die Auswahl an
Software ist groß, verbreitet sind z.B. der ProFTPd und der Wu-FTPd.
Diese
Programme sind allerdings nicht nur für die Vielfalt ihrer
Möglichkeiten,
sondern leider auch für die Vielzahl ihrer Sicherheitslücken bekannt.
Ebenfalls sehr leistungsfähig, aber bislang in Sicherheitsfragen noch
nicht
unangenehm aufgefallen ist Pure-FTPd, der auch in diesem Beispiel
installiert
werden soll.
Leider ist Pure-FTPd noch nicht in Debian Woody enthalten. Es
existieren
allerdings Backports des aktuellen Pure-FTPd für Debian Woody.
Achtung: Debian "Stable" bedeutet, daß die einzelnen
Pakete und ihr
Zusammenspiel von vielen Benutzern über einen längeren Zeitraum
getestet und
für stabil befunden wurden. Installiert man Backports, so ist diese
Stabilität
unter Umständen nicht mehr gewährleistet. Abstürze, ein "seltsames"
Reagieren
des Systems oder auch Probleme beim Upgrade auf das nächste
Debian-Release sind
nicht auszuschließen. Insbesondere weniger erfahrene (Debian-)Newbies
oder
Betreiber von Produktiv-Servern sollten daher überlegen, ob sie
wirklich einen
Backport installieren wollen.
Die Debian-Backports sind im allgemeinen aber von sehr guter Qualität
und werden
meist auch von den Maintainern der Pakete erzeugt. Ich selbst habe mit
den
Debian-Backports noch keinerlei negative Erfahrungen gemacht und halte
sie für
stabiler als so manche Releases anderer Linux-Distributionen. Trotzdem
sollte jeder
erst nach reiflicher Überlegung die Entscheidung für oder gegen einen
Backport treffen!
Zur Installation des Pure-FTPd-Backports ist folgender zusätzliche
Eintrag in der
Datei
/etc/apt/sources.list nötig:
deb http://www.ecology.uni-kiel.de/mirrors/debian/backports.org/debian stable pure-ftpd
Neben dem genannten existieren noch einige weitere Mirrors. Eine Liste
aller Backport-Mirrors
findet sich unter
http://www.backports.org/mirrors.html.
Entscheidet man sich trotz des Backports für Pure-FTPd, so wird er
folgendermaßen
installiert:
apt-get update
apt-get install pure-ftpd
Der Start von Pure-FTPd erfolgt über den Inetd, der von Debian
automatisch
entsprechend konfiguriert werden sollte. Dabei wird folgende Zeile der
Datei
/etc/inetd.conf hinzugefügt:
ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper
Durch einfaches Auskommentieren dieser Zeile mit einer Raute kann man
den Start
von Pure-FTPd verhindern, sollte einmal kein Bedarf an
FTP-Serverdiensten
bestehen.
In der Datei
/etc/default/pure-ftpd-common sollte
außerdem stehen:
STANDALONE_OR_INETD=inetd
Pure-FTPd wird eigentlich nur über Kommandozeilenparameter gesteuert.
Debian geht an
dieser Stelle aber (wieder einmal) einen etwas anderen Weg, der in
man pure-ftpd-wrapper genauer beschrieben ist.
Vereinfacht gesagt
wird dabei für jede Kommandozeilenoption eine Datei unter
/etc/pure-ftpd/conf/ angelegt, die den
Langnamen (GNU Style)
dieses Kommandozeilenparameters trägt. In dieser Datei steht dann
Yes oder
No, um diese Option
ein- bzw. auszuschalten.
Bei manchen Optionen, z.B. bei Limitangaben, kann auch ein Zahlenwert
in der
dazugehörigen Datei stehen.
Vor der Konfiguration des FTP-Servers muß man sich eine grundlegende
Frage
stellen: Wer soll alles darauf zugreifen dürfen? Grundsätzlich gibt es
zwei Möglichkeiten, man kann entweder anonymes FTP anbieten (also für
jeden offen) oder eine Anmeldung per Benutzername und Passwort
verlangen.
Im folgenden soll die Einrichtung eines Servers beschrieben werden, der
folgende
Anforderungen erfüllt:
- kein anonymes FTP
- keine Anmeldung für (administrative) Systembenutzer
(insbesondere
root)
("normale" Benutzer haben bei Debian UIDs ab 1000)
- CHROOT für alle Benutzer (d.h. sie landen beim
Zugriff über FTP in ihrem Home-Verzeichnis
und können von dort aus auch nicht weiter nach "oben" im
Verzeichnisbaum wechseln)
- Uploads sind nur möglich, wenn weniger als 90% des
Speicherplatzes belegt sind
- Loggen aller Zugriffe in die Datei
/var/log/pure-ftpd/transfer.log
Dieses Ziel erreicht man folgendermaßen:
echo "Yes" > /etc/pure-ftpd/conf/NoAnonymous
echo "1000" > /etc/pure-ftpd/conf/MinUID
echo "Yes" > /etc/pure-ftpd/conf/ChrootEveryone
echo "90" > /etc/pure-ftpd/conf/MaxDiskUsage
echo "No" > /etc/pure-ftpd/conf/VerboseLog
echo "clf:/var/log/pure-ftpd/transfer.log" > /etc/pure-ftpd/conf/AltLog
Würde man Pure-FTPd über die Kommandozeile starten, entspräche das
folgender
Kommandozeile:
pure-ftpd -E -u 1000 -A -k 90 -O clf:/var/log/pure-ftpd/transfer.og -B
(Das angehängte
-B sorgt beim Start von der Kommandozeile
dafür, daß
Pure-FTPd als Daemon im Hintergrund gestartet wird; diese Option ist
beim Start über den Inetd
natürlich nicht nötig.)
Soll sich ein Benutzer nicht über FTP einloggen können, so fügt man
einfach
seinen Namen in der Datei
/etc/ftpusers hinzu. Sollen
sich die Systemuser und
der User
michael nicht per FTP einloggen können, könnte
die Datei
also folgendermaßen aussehen:
# /etc/ftpusers: list of users disallowed FTP access.
root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
proxy
majordom
postgres
www-data
backup
msql
operator
list
irc
nobody
michael
Möchte man - aus welchen Gründen auch immer - doch anonymes FTP zur
Verfügung
stellen, so ist das auch nicht sonderlich schwer. Wer sich als
anonymous
einloggt,
der wird das Home-Verzeichnis des dafür vorgesehenen Benutzers
ftp
zu
sehen bekommen. Also mußssen Verzeichnis und User ersteinmal angelegt
werden (Befehle
mit entsprechenden Rückmeldungen):
saturn:~# mkdir /home/ftp
saturn:~# addgroup --system ftp
Adding group ftp (104)...
Done.
saturn:~# adduser --system --no-create-home --gecos "FTP user" --disabled-password ftp
Adding system user ftp...
Adding new user ftp (105) with group nogroup.
Not creating home directory.
saturn:~# chown 105:104 /home/ftp
(Die Werte für User-ID und Group-ID (im Beispiel
105 bzw.
104)
müssen natürlich an das jeweilige System angepaßt werden!)
Damit anonymes FTP funktioniert, muß nun noch eine weiter oben
getroffene Einstellung
geändert werden:
echo "No" > /etc/pure-ftpd/conf/NoAnonymous
Dies bewirkt, daß sich auch anonyme Nutzer als
anonymous
oder
ftp
einloggen können.
Aus Sicherheitsgründen sind bei anonymem FTP die folgenden Optionen
empfehlenswert:
echo "Yes" > /etc/pure-ftpd/conf/AnonymousCantUpload
echo "No" > /etc/pure-ftpd/conf/AnonymousCanCreateDirs
echo "Yes" > /etc/pure-ftpd/conf/AntiWarez
echo "No" > /etc/pure-ftpd/conf/AllowAnonymousFXP
echo "No" > /etc/pure-ftpd/conf/AllowUserFXP
echo "Yes" > /etc/pure-ftpd/conf/CustomerProof
Diese Optionen verhindern, daß anonyme User Dateien hochladen,
Unterverzeichnisse
erstellen oder Dateien herunterladen die dem Benutzer FTP gehören (also
vom Administrator
noch nicht gesehen worden sind). Letzteres sollte eigentlich Dank der
ersten beiden Optionen
sowieso nicht möglich sein, aber vielleicht möchte ja der eine oder
andere auch
anonymen FTP-Usern einen Upload ermöglichen - dann sollte man die
Option
AntiWarez keinesfalls vergessen!
FXP ist eine Art FTP zwischen Servern, nicht
unbedingt sicher und in den meisten
Fällen völlig unnötig. Deshalb wird es an dieser Stelle deaktiviert.
Die letzte Option schließlich dient zum "Eigenschutz" der User, hiermit
sollen häufige
Bedienfehler verhindert werden. Dazu zählt beispielsweise, daß man sich
die Rechte
für die eigenen Dateien entzieht. Generell zu empfehlen!
In dieser Anleitung bin ich davon ausgegangen, daß jeder User, der über
FTP
zugreifen soll, im System angelegt sein muß. Darüber hinaus besteht
aber auch die
Möglichkeit, mit sogenannten "Virtuellen Usern" zu arbeiten, d.h.
Usern, die nur in
der Datenbank des FTP-Servers existieren. Darauf näher einzugehen,
würde aber
den Rahmen dieser Anleitung sprengen. Ich verweise daher auf die guten
Ausführungen,
die zu diesem Thema unter
http://www.x-fish.org/tux_pureftpd02.html#virtual zu finden sind.
-> Nach oben
Quellen und weiterführende Links
-> Nach oben