ProFTP

Aus wiki.archlinux.de

ProFTPD ist ein einfacher, aber mächtiger FTP Server, welcher unter der GPL steht und in den meisten Distributionen zur Grundausstattung gehört. Eine seiner großen Stärken ist die Konfiguration, die zentral über eine Datei benutzerfreundlich erledigt wird.

Installation

ProFTPD installieren:

#pacman -S proftpd

Pacman sollte eventuelle Abhängigkeiten automatisch auflösen.

Konfiguration

Sobald die Installation fertig ist können wir uns an die Konfiguration des Servers machen. Im Grunde genommen ist es recht einfach, denn in der Datei /etc/proftpd.conf ist alles gut dokumentiert. /etc/proftpd.conf mit dem Editor seiner Wahl öffnen:

# Servername
ServerName                     "Privater FTP Server"

# Standalone (warten auf ankommende Verbindung und Daemon starten)
# oder (x)inetd für Start über den 'Superserver'
ServerType                     standalone

# Ist dies der Standard Server (idR. ja)
DefaultServer                  on

# Port festlegen (Standard ist 21)
Port                           21

# Globale Verzeichnis- und Dateirechteänderung
Umask                          022

# Anzahl max. gleichzeitiger Verbindungen (nur Standalone-Modus)
MaxInstances                   30

# Benutzerkennung unter der ProFTP laufen soll
User				nobody
Group				nobody

#### Globale Einstellungen

<Global>
# Ausgabe bei Fehlanmeldung und erfolgreicher Anmeldung (%u steht für den Benutzernamen)
AccessDenyMsg                  "Keine Anmeldung für %u möglich"
AccessGrantMsg                 "Anmeldung erfolgreich. Willkommen %u "

# Client trennen nach x Sekunden (Inaktivität, Nicht Erreichbar)
TimeOutStalled                 240
TimeOutIdle                    240
TimeOutLogin                   240

# Portbereich festlegen (für passive Verbindungen)
PassivePorts                   40000 50000
</Global>

#### Anonymer Zugang

# Verzeichnis für Anonymes FTP 
<Anonymous /home/aftp>

# Benutzer und Gruppe
User                           nobody
Group                          nobody

# Zu Setzen wenn der User keine Shell hat
RequireValidShell              off

# Max. Download-Rate setzen (KB/s). Beispiel 50 KB
TransferRate RETR              50.0

# Maximale Anzahl von Klienten, die sich gleichzeitig anmelden dürfen
MaxClients                     04

# Schreibrechte entziehen
<Limit WRITE>
DenyAll
</Limit>

</Anonymous>

Für weitere Konfigurationsmöglichkeiten besuche bitte die Webseiten in dem Abschnitt Web-Links.

FTPS

FTPS ist ein mit ssl verschlüsseltes Ftp-Protokoll um dieses zu ProFTPD hinzuzufügen muss man folgendes durchführen(OpenSsl muss installiert sein):

# cd /usr/local/etc
# mkdir ftpcert
# openssl genrsa 1024 > host.key
# chmod 400 host.key
# openssl req -new -x509 -nodes -sha1 -days 365 -key host.key > host.cert

abschließend noch folgendes in die /etc/proftpd.conf einfügen:

# TLS
<IfModule mod_tls.c>
TLSEngine on
TLSLog /var/log/proftpd/proftpd_tls.log
TLSProtocol TLSv1
TLSRequired off
TLSVerifyClient off
TLSRSACertificateFile /usr/local/etc/ftpcert/host.cert
TLSRSACertificateKeyFile /usr/local/etc/ftpcert/host.key
</IfModule>


Siehe auch

Very Secure FTP Daemon

Web-Links

ProFTPD.de
ProFTPD.org