ProFTP: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
KKeine Bearbeitungszusammenfassung
Zeile 88: Zeile 88:
# cd /usr/local/etc
# cd /usr/local/etc
# mkdir ftpcert
# mkdir ftpcert
# cd ftpcert
# openssl genrsa 1024 > host.key
# openssl genrsa 1024 > host.key
# chmod 400 host.key
# chmod 400 host.key
Zeile 98: Zeile 99:
# TLS
# TLS
<IfModule mod_tls.c>
<IfModule mod_tls.c>
TLSOptions UseImplicitSSL
TLSEngine on
TLSEngine on
TLSLog /var/log/proftpd/proftpd_tls.log
TLSLog /var/log/proftpd/proftpd_tls.log
Zeile 107: Zeile 109:
</IfModule>
</IfModule>
</pre>
</pre>
 
===implicit===
'''TLSOptions UseImplicitSSL''': Wenn diese Funktion aktiviert ist wird die Verbindung sofort nach dem entstehen verschlüsselt.
 
===explicit===
'''TLSOptions UseImplicitSSL''': Wenn diese Funktion aktiviert ist wird die Verbindung sofort nach dem entstehen verschlüsselt.
 
==RootLogin==
 
Achtung! bei Ftp ohne TLS wird das Passwort unverschlüsselt übertragen, daher ist stark davon abzuraten diese Option zu verwenden!
 
Um dem Benuzer "root" Ftp-Zugriff zu gewähren muss folgende Zeile in die '''/etc/proftp.conf''' eingetragen werden.
 
<pre>
RootLogin on
</pre>
 
um diese Freigabe wieder rückgängig zu machen ersetzt man diese Zeile mit:
 
<pre>
RootLogin off
</pre>


== Siehe auch ==
== Siehe auch ==

Version vom 26. November 2011, 23:59 Uhr

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
# cd 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>
TLSOptions UseImplicitSSL 
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>

implicit

TLSOptions UseImplicitSSL: Wenn diese Funktion aktiviert ist wird die Verbindung sofort nach dem entstehen verschlüsselt.

explicit

TLSOptions UseImplicitSSL: Wenn diese Funktion aktiviert ist wird die Verbindung sofort nach dem entstehen verschlüsselt.

RootLogin

Achtung! bei Ftp ohne TLS wird das Passwort unverschlüsselt übertragen, daher ist stark davon abzuraten diese Option zu verwenden!

Um dem Benuzer "root" Ftp-Zugriff zu gewähren muss folgende Zeile in die /etc/proftp.conf eingetragen werden.

RootLogin on 

um diese Freigabe wieder rückgängig zu machen ersetzt man diese Zeile mit:

RootLogin off 

Siehe auch

Very Secure FTP Daemon
FTP

Web-Links

ProFTPD.de
ProFTPD.org