Content
Dateianzeige für pure-ftpd (2.9.8)
usr/share/doc/pure-ftpd/pure-ftpd.txt
Das Pure-FTPd Paket
Einleitung
Mit diesem Paket wird der Filetransfer Dienst, im folgenden auch
Service genannt, auf dem Rechner installiert. Diese Service bieten die
Möglichkeit Dateien vom Server oder auf den Server zu transferieren.
Funktionen
Das Pure-FTPd Paket stellt folgende Basis-Funktionalität zur Verfügung:
* FTP-Server.
Als Software wird der ([1]Pure-FTPd) verwendet. Dieser FTP-Server
ist sehr sicher, bietet sehr viele Features und wird aktiv
weiterentwickelt.
Voraussetzungen
Dieses Paket benötigt folgende weitere Pakete libmariadb3 und
libssl1_1. Es ist auch abhängig davon, dass eine aktuelle Version des
Basissystems installiert ist.
Installation
Das Pure-FTPd Paket wird über das Setup-Menue im Untermenue ”Package
administration” installiert.
Das Menue im Setup-Program
Das Pure-FTPd Menue ist über den Menuepunkt ”Service administration”
des Hauptmenues im zentralen Setup-Programm zu erreichen. Es ist wie
folgt aufgebaut:
1. View documentaion
2. View changes
3. Edit main configuration
4. Advanced main configuration file handling
5. Edit virtual user configuration
6. Advanced virtual user configuration file handling
7. Show status of Pure-FTPd
8. Stop Pure-FTPd
9. Start Pure-FTPd
10. Pure-FTPd tools
1. List Pure-FTPd local users
2. List Pure-FTPd virtual users
3. Show info about a Pure-FTPd virtual user
4. Check Pure-FTPd virtual users
5. Report current FTP sessions
0. Return
0. Return
Änderung der Konfiguration
Die Konfiguration kann über den Menuepunkt ”Edit main Configuration”
geändert werden. Standardmäßig wird dabei der Editor genutzt, der über
den Menuepunkt ”Set eisfair configuration editor” in der ”Base
configuration” eingestellt ist.
Nachdem der Editor beendet wurde wird die Konfiguration mit dem
eischk-Programm automatisch auf syntaktische und teilweise auch auf
semantische Fehler geprüft. Werden Fehler festgestellt, so werden diese
gemeldet und der Benutzer zur Korrektur aufgefordert. Wird eine solche
Korrektur nicht durchgeführt, so kann es zu unvorhersehbaren
Fehlfunktionen bei dem Dienst kommen.
Es wird zusätzlich gefragt, ob die Konfiguration angewendet (aktiviert)
werden soll. Wird dieses verneint, so unterbleibt die Aktivierung.
ACHTUNG
Beim nächsten Boot-Vorgang kann es in diesem Fall zu unvorhersehbaren
Fehlern kommen.
Wird die Aktivierung bestätigt, werden über ein Skript die
durchgeführten Änderungen wirksam gemacht. Dazu wird der Pure-FTPd
gestoppt und neu gestartet.
Über den Menuepunkt ”Edit virtual user configuration” kann die
Konfiguration der virtuellen User verändert werden. Die Konfiguration
der virtuellen User wurde in einen extra Menuepunkt ausgelagert, da
Änderungen an den virtuellen Usern keinen Restart des gesamten Services
notwendig machen.
Nur wenn PURE_FTPD_ENABLE_VIRTUAL_USERS verändert, also z.B. von 'no'
auf 'yes' geändert wird, ist ein Restart notwendig.
Für die Konfiguration der virtuellen User existiert eine spezielle
Konfigurationsdatei (/etc/config.d/pure-ftpd-vuser)
Die Haupt-Konfigurationsdatei
Die Konfigurationsdatei (/etc/config.d/pure-ftpd) enthält in einer
Reihe von Abschnitten die Parameter, die den Dienst parametrisieren
bzw. festlegen, ob der Dienst überhaupt zur Verfügung gestellt wird
oder nicht.
Pure-FTPd (general settings)
START_PURE_FTPD
Legt fest, ob der Pure-FTPd-Server gestartet wird.
Gültige Werte: yes, no
Standardeinstellung: START_PURE_FTPD='no'
PURE_FTPD_VIRTUALCHROOT
Legt fest, ob der Pure-FTPd-Server gestartet wird.
Legt fest, welche Variante des Pure-FTPd-Servers gestartet wird.
PURE_FTPD_VIRTUALCHROOT='yes'
Ein User, der mit FTP nicht über sein Homeverzeichnis
herauskommt kann über speziell angelegte symbolische Links auf
andere Verzeichnisse doch Verzeichnisse ausserhalb seines
Homeverzeichnis erreichen. Dies macht z.B. ein gemeinsammes
download Verzeichnis auf /home/download möglich. Diese Variante
birgt aber auch Sicherheitsrisiken.
PURE_FTPD_VIRTUALCHROOT='no'
Die User können nicht über ihre Homeverzeichnisse herauskommen.
Siehe aber auch PURE_FTPD_DONT_CHROOT_GROUP.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_VIRTUALCHROOT='yes'
PURE_FTPD_START_METHOD
Legt fest, wie der Pure-FTPd-Server gestartet werden soll. Bei
Angabe von 'st' wird der Pure-FTPd-Server als sogenannter
Standalone Server gestartet. Bei Angabe von 'xi' erfolgt der
Start über den xinetd. Hier muss auch START_XINETD='yes' in der
Konfiguration des xinetd angegeben werden.
Gültige Werte: st, xi
Standardeinstellung: PURE_FTPD_START_METHOD='st'
PURE_FTPD_BIND
Die Angabe einer IP-Adresse auf der der Pure-FTPd-Server
'lauschen' soll. Hier wird keine echte IP Adresse angegeben
sondern der Index der Angabe IP_ETH_x_IPADDR aus der Base
Konfiguration in /etc/config.d/base.
Ist PURE_FTPD_BIND leer, so wird auf allen konfigurierten
IP-Adressen 'gelauscht'.
Gültige Werte: Index von IP_ETH_x_IPADDR oder leer
Standardeinstellung: PURE_FTPD_BIND=”
PURE_FTPD_PORT
Definiert den Port, auf dem der Pure-FTPd-Server ”lauschen”
soll.
Gültige Werte: Port Nummer, Standard=21
Standardeinstellung: PURE_FTPD_PORT='21'
PURE_FTPD_LISTEN
Definiert auf welchen Adressen der Pure-FTPd-Server ”lauschen”
soll.
Gültige Werte: ipv4only, ipv6only oder leer.
ipv4only lausche nur auf IPv4 Adressen
ipv6only lausche nur auf IPv6 Adressen
leer lausche auf allen konfigurierte Adressen des Systems.
Standardeinstellung: PURE_FTPD_LISTEN='ipv4only'
PURE_FTPD_PASV_PORTRANGE
Portbereich der beim passive Mode genutzt werden soll. Format
:.
Wird keine Angabe gemacht (PURE_FTPD_PASV_PORTRANGE ist leer),
so nutzt der Pure-FTPd-Server die Ports 1024 bis 65535.
Gültige Werte: Portnummer:Portnummer oder leer
Standardeinstellung: PURE_FTPD_PASV_PORTRANGE=”
PURE_FTPD_PASV_IP
Auf ein PASV/EPSV/SPSV Kommando des FTP-Clients antwortet der
FTP-Server mit der Angabe aus PURE_FTPD_PASV_IP.
Gültige Werte: leer, IP-Adresse, Hostname oder fully qualified
domain name (FQDN)
Standardeinstellung: PURE_FTPD_PASV_IP=”
PURE_FTPD_NAT_MODE
Ein Schalter, mit dem man spielen kann, wenn FTP über einen
masquerading Router (beispielsweise fli4l) nicht funktioniert.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_NAT_MODE='no'
PURE_FTPD_WELCOMEFILE
Datei, die die sog. Welcome Message enthält. Der Inhalt der
Datei wird statt der Meldung
———- Welcome to Pure-FTPd ———-
ausgegeben. Die Datei muss existieren und die Zugriffsrechte 644
haben. Eine Änderung der Datei nachdem der Pure-FTPd gestartet
wurde ist möglich. Wird die Datei nachträglich gelöscht, so wird
die Standardmeldung ausgegeben.
Gültige Werte: Absoluter Pfad
Standardeinstellung: PURE_FTPD_WELCOMEFILE=”
PURE_FTPD_FSCHARSET
Auswahl des Zeichensatzes für das Filesystem. Der Pure-FTPd
konvertiert ggf. die Dateinamen NICHT aber die Dateinhalte. Ist
der Zeichensatz des Filesystem ISO-8859-15, der des Clients aber
UTF-8, so können einige Clients die Konvertierung über einen
internen Befehl ('OPTS UTF8 ON') anfordern. Umlaute werden dann
trotz der unterschiedlichen Zeichensätze korrekt angezeigt. Bei
'auto' wird die notwendige Option für die Konvertierung
automatische ausgewählt. Dabei wird die Environmentvariable
LC_CTYPE aus /etc/config.d/environment genutzt.
Gültige Werte: ISO-8859-15, UTF-8 oder auto
Standardeinstellung: PURE_FTPD_FSCHARSET='auto'
Pure-FTPd (file related settings)
PURE_FTPD_UMASKS
Format :. Beim
Erstellen von Dateien bzw. Verzeichnissen zu nutzende umask
Angabe. Der von Pure-FTPd benutzte Standardwert ist 133:022.
Siehe umask Kommando.
Gültige Werte: Zahl:Zahl
Standardeinstellung: PURE_FTPD_UMASKS=”
PURE_FTPD_LIST_DOT_FILES
Bei Angabe von 'yes' werden Dateien, die mit einem Punkt ('.')
beginnen auch dann angezeigt, wenn der benutzte FTP-Client das
list-Kommando nicht mit der Option '-a' verwendet. Diese Option
ist eine Umgehungslösung für schlecht konfigurierte
FTP-Clienten.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_LIST_DOT_FILES='no'
PURE_FTPD_DISALLOW_RENAMING
Bei Angabe von 'yes' ist das Umbenennen von Dateien verboten.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_DISALLOW_RENAMING='no'
PURE_FTPD_DISALLOW_ANONYMOUS_UPLOAD
Bei Angabe von 'yes' ist es anonymen Zugängen verboten Dateien
auf dem FTP-Server abzulegen (kein Upload).
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_DISALLOW_ANONYMOUS_UPLOAD='no'
PURE_FTPD_NO_TRUNCATE
Bei Angabe von 'yes' wird eine Datei, wenn sie beim Upload
ersetzt wird, nicht vorab gelöscht bzw. trunkiert. Der Upload
findet zunächst in eine temporäre Datei (z.B.
.pureftpd-upload.599d35aa.15.1a27.23b90451) statt. Erst beim
Abschluss des Uploads wird die Datei in einer atomaren Operation
umbenannt und ersetzt damit die bisherige Datei.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_NO_TRUNCATE='no'
Pure-FTPd (timeout settings)
PURE_FTPD_HANGUP_TIME
Anzahl der Minuten, nach der eine FTP-Verbindung wegen
Inaktivität getrennt wird.
Gültige Werte: Zahl
Standardeinstellung: PURE_FTPD_HANGUP_TIME='15'
Pure-FTPd (access settings)
PURE_FTPD_USE_PAM
Über diese Konfigurationsvariable kann festgelegt werden, ob die
Authentifizierung über das sog. Pluggable Authentication Module
(PAM) erfolgen soll.
Bei PURE_FTPD_USE_PAM='no' wird anstelle von PAM die Unix
authentication (die traditionalle /etc/passwd Datei) genutzt.
Siehe Abschnitt ”Nur FTP User” in der Dokumentation.
ACHTUNG: bei PURE_FTPD_USE_PAM='no' werden die über die
Konfiguration von PURE_FTPD_ENABLE_DENY_USERS konfigurierten
sog. Deny User nicht mehr beachtet.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_USE_PAM='yes'
PURE_FTPD_ALLOW_ROOT_ACCESS
Legt fest, ob sich root per FTP einloggen darf (yes) oder ob es
ihm verboten wird (no). Standardmäßig ist 'no' voreingestellt,
weil ansonsten das root-Passwort unverschlüsselt über die
Leitung geht.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_ALLOW_ROOT_ACCESS='no'
PURE_FTPD_ONLY_USERS
Beeinflusst den Zugang als anonymer User. Verbietet den Zugang
(yes) oder auch anonyme User dürfen sich einloggen (no).
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_ONLY_USERS='yes'
PURE_FTPD_ONLY_ANONYMOUS
Bei Angabe von 'yes' sind ausschliesslich anonyme Zugänge
erlaubt.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_ONLY_ANONYMOUS='no'
PURE_FTPD_DONT_CHROOT_GROUP
Standardmäßig kann jeder User (außer root) via FTP nicht über
sein Homeverzeichnis herauskommen. D.h. der FTP-User ”sieht” nur
sein eigenes Homeverzeichnis inkl. darunter liegender
Verzeichnisse und Dateien, nicht aber Verzeichnisse oberhalb des
Homeverzeichnisses. Hier kann eine Gruppe (numerische GID)
angeben werden, deren Mitglieder nicht auf ihre
Homeverzeichnisse beschränkt sind. Wenn du nicht weißt, was du
damit anstellst, bitte leer lassen.
Gültige Werte: Zahl
Standardeinstellung: PURE_FTPD_DONT_CHROOT_GROUP=”
PURE_FTPD_TLS
0 Unterstützung für SSL/TLS ist ausgeschaltet.
1 Verbindungen über den normalen Weg und über
SSL/TLS sind möglich.
2 Klartext Verbindungen werden nicht akzeptiert,
es sind nur Verbindungen über SSL/TLS möglich.
3 Klartext Verbindungen werden nicht akzeptiert,
es sind nur Verbindungen über SSL/TLS möglich.
Auch Klartext-Datenverbindungen werden abgelehnt.
ACHTUNG
Achtung: wird PURE_FTPD_TLS auf einen Wert ungleich 0 gesetzt,
so wird das notwendige Zertifikat geprüft. Existiert kein
Zertifikat oder enthält das Zertifikat keine DH PARAMETERS
Sektion, so wird PURE_FTPD_TLS ignoriert.
Gültige Werte: 0, 1, 2, 3
Standardeinstellung: PURE_FTPD_TLS='0'
PURE_FTPD_CERTIFICATE
Name des Zertifikates, welches genutzt werden soll. Wird ein
Zertifikat ausgewählt, so wird ggf. ein symbolischer Link mit
dem Namen pure-ftpd.pem erstellt, der auf das ausgewählte
Zertifikat zeigt.
Mit dem Paket wird ein Default-Zertifikat pure-ftpd.pem
mitgeliefert (nur bis Version 2.7.1).
Das gewählte Zertifikat muss eine DH PARAMETERS Sektion
enthalten. Dies ist bei den über das Certs Paket erstellten
Zertifikaten der Fall.
Gültige Werte: Dateiname (.pem-Datei in /usr/local/ssl/certs)
Standardeinstellung: PURE_FTPD_CERTIFICATE='pure-ftpd.pem'
PURE_FTPD_NONANONYMOUS_IP
Die Angabe einer IP-Adresse in PURE_FTPD_NONANONYMOUS_IP erlaubt
für diese IP-Adresse eines Servers mit mehreren IP-Adressen dass
sich User mit Usernamen anmelden können. Über alle anderen
IP-Adressen ist nur eine Anmeldung als User anonymous möglich.
Hier wird keine echte IP Adresse angegeben sondern der Index der
Angabe IP_ETH_x_IPADDR aus der Base Konfiguration in
/etc/config.d/base.
Gültige Werte: Index von IP_ETH_x_IPADDR oder leer
Standardeinstellung: PURE_FTPD_NONANONYMOUS_IP=”
Pure-FTPd (limit settings)
PURE_FTPD_MAX_USER
Maximale Anzahl der User, die gleichzeitig auf dem FTP-Server
eingeloggt sein dürfen.
Gültige Werte: Zahl
Standardeinstellung: PURE_FTPD_MAX_USER='20'
PURE_FTPD_PARTITION_FILL_LIMIT
Erlaube keine FTP Uploads wenn die Ziel-Partition zu mehr als
PURE_FTPD_PARTITION_FILL_LIMIT Prozent gefüllt ist.
Gültige Werte: Zahl
Standardeinstellung: PURE_FTPD_PARTITION_FILL_LIMIT='95'
PURE_FTPD_MAXCON_PER_IP
Maximale zulässige Anzahl von FTP-Verbindungen pro IP-Adresse.
Diese Option ist nur bei PURE_FTPD_START_METHOD='st' möglich.
Jeder weitere Versuch einer FTP-Verbindung über die in
PURE_FTPD_MAXCON_PER_IP angegebene Zahl herzustellen wird
abgelehnt.
Gültige Werte: Zahl
Standardeinstellung: PURE_FTPD_MAXCON_PER_IP=”
PURE_FTPD_MAX_CPU_LOAD
Ist die CPU Auslastung höher als der hier angegeben Wert, so
wird der Download von Dateien für anonyme Zugänge verboten.
Gültige Werte: Zahl
Standardeinstellung: PURE_FTPD_MAX_CPU_LOAD=”
PURE_FTPD_MAX_LOGINS
Format :. Maximale Anzahl
von normalen Benutzern bzw. anonymen Benutzern, die mit dem
FTP-Server verbunden sein dürfen. Weitere Verbindungswünsche
werden abgelehnt. Der Wert 0 bedeutet unlimitierte Anzahl von
Logins.
Gültige Werte: Zahl:Zahl
Standardeinstellung: PURE_FTPD_MAX_LOGINS=”
Pure-FTPd (quota/bandwidth/ratio settings)
PURE_FTPD_FILE_QUOTA
Format :. Beschränkung der Anzahl der
Dateien bzw. der Summe der Dateigrösse, die ein Benutzer auf dem
FTP-Server ablegen darf. Die Angabe max Grösse ist in Megabytes.
Diese Beschränkung ist nur wirksam für Aktionen, die über den
FTP-Server durchgeführt werden (virtual Quota). Die Beschränkung
gilt nicht für Benutzer, die speziellen Gruppen (siehe
PURE_FTPD_DONT_CHROOT_GROUP) angehören. Diese Option benötigt
.ftpquota-Dateien im jeweiligen Home-Verzeichnis des Users.
Siehe Kommando pure-quotacheck und Beispielskript
/usr/share/doc/pure-ftp/examples/create_dot_ftpquota.sh.
Gültige Werte: Zahl:Zahl
Standardeinstellung: PURE_FTPD_FILE_QUOTA=”
PURE_FTPD_USER_BANDWIDTH
Format []:[]. Beschränkung der zulässigen
Bandbreite bei normale Unix User, dem User anonymous und
virtuelle User (wenn für diese nicht manuell über pure-pw
usermod spezielle Einstellungen gemacht werden). Angabe in
Kilobyte pro Sekunde.
Beispiele:
256:64 256 KB/s für Uploads, 64 KB/s für Downloads
256: 256 KB/s für Uploads, keine Grenze für Downloads
:64 keine Grenze für Uploads, 64 KB/s für Downloads
Gültige Werte: Zahl:Zahl
Standardeinstellung: PURE_FTPD_USER_BANDWIDTH=”
PURE_FTPD_ANONYMOUS_BANDWIDTH
Wie PURE_FTPD_USER_BANDWIDTH, aber nur für den User anonymous.
Gültige Werte: Zahl:Zahl
Standardeinstellung: PURE_FTPD_ANONYMOUS_BANDWIDTH=”
ACHTUNG
Es darf nur PURE_FTPD_USER_BANDWIDTH oder
PURE_FTPD_ANONYMOUS_BANDWIDTH gesetzt werden.
PURE_FTPD_ANONYMOUS_RATIO
Angabe einer sogenannten Ratios für anonyme Zugänge. Format
:. Angabe jeweils in MByte. Eine
Angabe von 2:5 bedeutet, dass ein Benutzer zunächst 2 MByte
Daten auf den Server ablegen muss, um dann bis zu 5 MByte
herunterladen zu dürfen.
Gültige Werte: Zahl:Zahl
Standardeinstellung: PURE_FTPD_ANONYMOUS_RATIO=”
PURE_FTPD_ALL_USER_RATIO
Ratio für normale und anonyme Zugänge. Siehe
PURE_FTPD_ANONYMOUS_RATIO.
Gültige Werte: Zahl:Zahl
Standardeinstellung: PURE_FTPD_ALL_USER_RATIO=”
Pure-FTPd (log settings)
PURE_FTPD_LOG
Legt fest, ob ein Protokoll der Up- und Downloads in einem
speziellen Format (siehe PURE_FTPD_LOG_FORMAT) erfolgen soll.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_LOG='no'
PURE_FTPD_LOG_FORMAT
Format des Protokolls der Up- und Downloads.
Gültige Werte: CLF, Stats, W3C, Xferlog
Standardeinstellung: PURE_FTPD_LOG_FORMAT='CLF'
PURE_FTPD_LOG_PATH
Pfad für die Protokolldatei
Gültige Werte: Absoluter Pfad
Standardeinstellung: PURE_FTPD_LOG_PATH='/var/log/pure-ftpd.log'
PURE_FTPD_LOG_PID
Bei Angabe von 'yes' wird die PID im Log protokolliert.
Beispiel: 'pure-ftpd[5396]:' statt 'pure-ftpd:'.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_LOG_PID='no'
PURE_FTPD_SYSLOG_FACILITY
Die angegebene Facility wird für das Logging benutzt.
Gültige Werte:
none,auth,authpriv,cron,daemon,ftp,kern,lpr,mail,mark,
news,security,syslog,user,uucp,local0,local1,local2,
local3,local4,local5,local6,local7 oder leer
leer bedeutet ftp
none bedeutet Logging ausschalten. Dies betrifft aber nur das
Logging von ftp.* Meldungen, nicht die von authpriv.* erzeugten
Meldungen.
Standardeinstellung: PURE_FTPD_SYSLOG_FACILITY=”
PURE_FTPD_DONT_RESOLVE
Bei Angabe von 'yes' werden IP-Adressen nicht in Hostnamen
umgesetzt, es werden also die IP-Adressen protokolliert.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_DONT_RESOLVE='no'
Pure-FTPd (upload settings)
PURE_FTPD_UPLOADSCRIPT_ARGS
Über das Programm pure-uploadscript kann nach jedem Upload einer
Datei ein Programm/Shell-Skript (z.B. ein Virenscanner)
gestartet werden. Bei PURE_FTPD_UPLOADSCRIPT_ARGS sind die
Argumente für den Aufruf von pure-uploadscript, z.B. '-r
/tmp/scanner.sh' anzugeben. Hinter -r ist der Name des
Programms/Shell-Skript anzugeben. Unter
/usr/share/doc/pure-ftp/examples findet sich als scanner.sh ein
unvollständiges Beispielskript. Das Argument -B (Starte den
Prozess im Hintergrund) wird automatisch hinzugefügt.
Dokumentation siehe: [2]pure-uploadscript
Standardeinstellung: PURE_FTPD_UPLOADSCRIPT_ARGS=”
Pure-FTPd (virtual server settings)
Virtuelle Server sind sinnvoll, wenn ein Server mehrere IP-Adressen
hat. Über virtuelle Server kann eine Trennung des Verzeichnisses für
den User anonymous erreicht werden. Ohne diese Konfiguration nutzen
alle User anonymous auf allen IP-Adressen das Verzeichnis /home/ftp.
PURE_FTPD_ENABLE_VIRTUAL_SERVER
Virtuelle Server werden konfiguriert, wenn
PURE_FTPD_ENABLE_VIRTUAL_SERVER='yes' gesetzt wird. Default ist
PURE_FTPD_ENABLE_VIRTUAL_SERVER='no'.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_ENABLE_VIRTUAL_SERVER='no'
PURE_FTPD_VIRTUAL_SERVER_N
Anzahl der zu konfigurierenden virtuellen Server.
Gültige Werte: Zahl
Standardeinstellung: PURE_FTPD_VIRTUAL_SERVER_N='2'
PURE_FTPD_VIRTUAL_SERVER_x_NAME
Name des virtuellen Servers.
Gültige Werte: Text
Standardeinstellung: PURE_FTPD_VIRTUAL_SERVER_x_NAME=”
PURE_FTPD_VIRTUAL_SERVER_x_ACTIVE
Virtuellen Server aktivieren 'yes' oder 'no'
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_VIRTUAL_SERVER_x_ACTIVE='no'
PURE_FTPD_VIRTUAL_SERVER_x_IP
IP-Adresse des virtuellen Servers.
Hier wird keine echte IP Adresse angegeben sondern der Index der
Angabe IP_ETH_x_IPADDR aus der Base Konfiguration in
/etc/config.d/base.
Gültige Werte: Index von IP_ETH_x_IPADDR
Standardeinstellung: PURE_FTPD_VIRTUAL_SERVER_x_IP='2'
PURE_FTPD_VIRTUAL_SERVER_x_DIR
Verzeichnis für den User anonymous bei Nutzung der IP-Adresse
des virtuellen Servers.
Gültige Werte: Verzeichnis
Standardeinstellung:
PURE_FTPD_VIRTUAL_SERVER_x_DIR='/ftpdata/extern'
Pure-FTPd (deny users)
Deny user sind schon länger Bestandteil der Funktionalität des
Pure-FTPd. Bisher mussten diese User händisch in der Datei
/etc/ftpusers konfiguriert werden.
Über die deny users kann normalen Unix Users verboten werden sich via
FTP am Server anzumelden. D.h. ein User kann sich zwar per SSH oder
direkt am Server anmelden, eine FTP Session zum Server unter Nutzung
des entsprechenden Usernamens kann aber nicht aufgebaut werden.
Existiert noch keine Konfiguration der deny user in der
Konfigurationsdatei des Pure-FTPd, so wird eine ggf. vorhandene Datei
/etc/ftpusers gelesen und die entsprechenden Variablen belegt.
PURE_FTPD_ENABLE_DENY_USERS
Eine Angabe 'yes' sorgt dafür, dass die Funktionalität genutzt
wird und dass die Datei /etc/ftpusers mit den Usernamen gefüllt
wird.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_ENABLE_DENY_USERS='yes'
PURE_FTPD_DENY_USERS_N
Anzahl der zu konfigurierenden deny User.
Gültige Werte: Zahl
Standardeinstellung: PURE_FTPD_DENY_USERS_N='1'
PURE_FTPD_DENY_USERS_x_USERNAME
Username des deny Users.
Gültige Werte: Username
Standardeinstellung: PURE_FTPD_DENY_USERS_x_USERNAME='bill'
Pure-FTPd (additional settings)
PURE_FTPD_ADD_ARGS
Zusätzliche Argumente beim Start des Pure-FTPd. Hier sollten nur
erfahrene Anwender Angaben machen.
Einer der häufigsten Anwendungsfälle für diesen Parameter ist
eine Angabe der Form -L :,
also z.B. -L 5000:10. Der Pure-FTPd listet standardmäßig nur
2000 Dateien mit einer Verzeichnistiefe von 5. Diese Limitierung
kann über eine entsprechende Angabe bei PURE_FTPD_ADD_ARGS
umgangen werden.
Standardeinstellung: PURE_FTPD_ADD_ARGS=”
PURE_FTPD_SHOW_ARGS
Eine Angabe 'yes' sorgt dafür, dass alle Parameter für den Start
des Pure-FTPd angezeigt werden. Dies ist bei einer Fehlersuche
sinnvoll.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_SHOW_ARGS='no'
Die virtual User Konfigurationsdatei
Die Konfigurationsdatei (/etc/config.d/pure-ftpd-vuser) enthält die
Konfiguration der virtuellen User.
Pure-FTPd (virtual Users)
PURE_FTPD_ENABLE_VIRTUAL_USERS
Unterstützung für die virtuellen FTP-User einschalten (yes) oder
abschalten (no).
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_ENABLE_VIRTUAL_USERS='no'
PURE_FTPD_VIRTUAL_USERS_DELETE
Diese Variable legt fest, ob virtuelle FTP-User die nicht mehr
in einer PURE_FTPD_VIRTUAL_USERS_#_USERNAME Variablen definiert
sind gelöscht werden oder, wie in den älteren Versionen des
Pure-FTPd-Paketes, bestehen bleiben.
Wird PURE_FTPD_VIRTUAL_USERS_DELETE='yes' gesetzt, so sind nach
Aktivierung der Konfiguration nur die aktuellen virtuellen
FTP-User verfügbar. Alle anderen werden gelöscht, wobei
allerdings die Homeverzeichnisse bestehen bleiben.
ACHTUNG
Wird die Variable auf dem Standardwert 'no' belassen, so kann es
zu folgendem Effekt kommen. Ein virtueller FTP-User ist nicht
mehr in der Konfigurationsdatei durch eine
PURE_FTPD_VIRTUAL_USERS_#_USERNAME Variablen beschrieben, er ist
aber in den internen Konfigurationsdateien des Pure-FTPd Servers
weiterhin vorhanden und kann sich auch weiterhin anmelden.
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_VIRTUAL_USERS_DELETE='no'
PURE_FTPD_VIRTUAL_USERS_N
Anzahl der definierten virtuellen User.
Gültige Werte: Zahl
Standardeinstellung: PURE_FTPD_VIRTUAL_USERS_N='1'
PURE_FTPD_VIRTUAL_USERS_x_USERNAME
Definiert für den virtuellen User x den Benutzernamen.
Gültige Werte: Username
Standardeinstellung:
PURE_FTPD_VIRTUAL_USERS_x_USERNAME='testuser'
PURE_FTPD_VIRTUAL_USERS_x_ACTIVE
Virtuellen User aktivieren 'yes' oder 'no'
Gültige Werte: yes, no
Standardeinstellung: PURE_FTPD_VIRTUAL_USERS_x_ACTIVE='no'
PURE_FTPD_VIRTUAL_USERS_x_HOME
Definiert das Homeverzeichnis für den virtuellen User x.
Gültige Werte: absoluter Verzeichnisname
Standardeinstellung:
PURE_FTPD_VIRTUAL_USERS_x_HOME='/home/vftp/testuser'
PURE_FTPD_VIRTUAL_USERS_x_PASSWD
Definiert das Passwort für den virtuellen User x. Wird ein
Passwort leer gelassen (also ”), so wird beim Anlegen des Users
nach dem Passwort gefragt. Wird ein Passwort angegeben, so
bekommt der User dieses Passwort. Um die Sicherheit des Users
nicht zu gefährden, wird das Passwort nach der Anlage des Users
hier in der Konfiguration auf '******' umgesetzt.
Standardeinstellung: PURE_FTPD_VIRTUAL_USERS_x_PASSWD=”
FTP: Virtuelle User
Virtuelle User sind nur auf den Pure-FTPd beschränkt, der Login und das
Passwort gelten nur für FTP, nicht für SSH oder andere Dienste.
Virtuelle User sind dann sehr nützlich, wenn bestimmte User nur
FTP-Zugriff haben sollen und keine anderen Rechte haben sollen. In
Verbindung mit dem Apache Webserver lassen sich damit z.B. einfach sehr
grosse Mengen von virtuellen Hosts aufsetzen, denen jeweils ein
virtueller FTP-User zugeordnet ist. Damit bleibt die Übersicht im
System trotz der grossen Menge an FTP-Usern übersichtlich.
Die Homeverzeichnisse (Standardverzeichnisse) der virtuellen User
liegen standardmäßig unter /home/vftp/. Wichtig: die Verzeichnisse der
einzelnen virtuellen User werden, wenn sie nicht bereits existieren,
erst beim ersten Login als virtueller User eingerichtet.
Nur FTP User
Normale Unix User können so konfiguriert werden, dass sie
ausschließlich FTP-Zugriff haben und nicht die Shell Ebene benutzen
können.
Dazu muss der Eintrag des entsprechenden Users in der Datei /etc/passwd
modifiziert werden. Beispiel:
Die Zeile:
onlyftp:x:2011:100:Only FTP:/home/onlyftp:/bin/bash
wird in
onlyftp:x:2011:100:Only FTP:/home/onlyftp:ftp
geändert.
Der Unix-User onlyftp hat jetzt keine gültige Shell mehr. Normalerweise
weist der Pure-FTPd solche User auch beim Versuch eines FTP-Zugriffs
ab, da die PAM Konfiguration eine gültige Shell voraussetzt.
Wird nun über
PURE_FTPD_USE_PAM='no'
die Authentifizierung über das sog. Pluggable Authentication Module
interface (PAM) ausgeschaltet, so nutzt der Pure-FTPd die Datei
/etc/passwd direkt. Der Pure-FTPd erkennt den Eintrag ftp als Shell an
und ermöglicht den FTP-Zugriff.
ACHTUNG:
bei PURE_FTPD_USE_PAM='no' werden die ueber die Konfiguration von
PURE_FTPD_ENABLE_DENY_USERS konfigurierten sog. Deny User nicht mehr
beachtet. Die Datei /etc/ftpusers, diese wird aus den Angaben den
erstellt wird, wird über die PAM Konfiguration ausgewertet.
Siehe /etc/pam.d/pure-ftpd Zeile
auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers
onerr=succeed
Da bei
PURE_FTPD_USE_PAM='no'
PAM nicht mehr genutzt wird, wird daher auch diese Datei / Zeile nicht
mehr genutzt.
Informationen zu Verzeichnissen
Eine Reihe von Verzeichnissen spielen beim Paket pure-ftpd wichtige
Rollen.
a.) normale Unix User
Meldet man sich beim pure-ftpd Server als normaler Unix User an, so hat
man zunächst Zugriff auf das Home-Verzeichnis des Unix-Users.
Nur User mit der Group-ID 0, also z.B. der User root hat das Recht sein
Home-Verzeichnis nach ”unten” also in Richtung des sog.
Wurzelverzeichnisses / zu verlassen.
Über die Angabe in PURE_FTPD_DONT_CHROOT_GROUP kann einer Gruppe (über
die Group-ID) und damit allen Gruppenmitgliedern die Erlaubnis gegeben
werden ebenfalls das Home-Verzeichnis nach ”unten” zu verlassen. Wird
hier die Gruppe users (über deren Group-ID) angegeben, so ist die
Sicherheit des Servers u.U. stark gefährdet.
Es gibt spezielle, sehr besondere und komplexe Konfigurationen: Siehe
dazu https://download.pureftpd.org/pub/pure-ftpd/doc/README unter dem
Stichpunkt chroot.
b.) virtuelle User
Virtuelle User haben Home-Verzeichnisse im Verzeichnis /home/vftp. Der
Name des Home-Verzeichnisses sollte dem Usernamen entsprechen, kann
aber innerhalb des Verzeichnisses /home/vftp frei gewählt werden.
Obwohl der gesamte Verzeichnisbaum, also auch /home/vftp wählbar ist
sollten nur erfahrene Administratoren den Basis-Pfad /home/vftp ändern.
c.) anonymous User
Hier hängt das genutzte Verzeichnis davon ab, ob virtuelle Server
definiert sind.
Ist kein virtueller Server definiert, so sieht der anonymous User nach
dem Anmelden das Verzeichnis /home/ftp.
Sind virtuelle Server definiert, so ist das Verzeichnis abhängig von
der genutzten IP-Adresse (PURE_FTPD_VIRTUAL_SERVER_x_IP) und dem dazu
gehörigen Verzeichnis (PURE_FTPD_VIRTUAL_SERVER_x_DIR).
Einstellungen beim Übersetzen der Packages
Mit folgenden Einstellungen wurde der Pure-FTPd übersetzt:
--with-ftpwho
--with-rfc2640
--prefix=/usr
--sysconfdir=/etc/pure-ftpd
--with-ftpwho
--with-puredb
--with-language=english
--with-throttling
--with-altlog
--with-quotas
--with-uploadscript
--with-peruserlimits
--with-ratios
--with-pam
--with-tls
--with-certfile=/var/certs/ssl/certs/pure-ftpd.pem
--with-sysquotas
--with-mysql
--with-cookie
--with-virtualhosts
Der pure-ftpd wird zwei mal konfiguriert und übersetzt:
--with-virtualchroot
Hier ensteht das Binary pure-ftpd_with_virtualchroot.
Beim zweiten konfigurieren und übersetzten wird ohne diese
Konfiguration übersetzt. Es entsteht das Binary
pure-ftpd_no_virtualchroot
Bis incl. Version 2.9.1 zusätzlich
--with-pgsql
__________________________________________________________________
References
1. http://www.pureftpd.org/
2. http://linux.die.net/man/8/pure-uploadscript