Code: Select all
apt-get install proftpd
Die ProFTPD Konfiguration
Beispiel Config
Code: Select all
Include /etc/proftpd/modules.conf
UseIPv6 off
# Hostname / IP hier eintragen
ServerName "hostname"
ServerType standalone
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
DisplayLogin welcome.msg
DisplayFirstChdir .message
ListOptions "-l"
DenyFilter \*.*/
# Diese Optionen sollen für alle gelten
<Global>
# Es dürfen sich nur Benutzer anmelden die eine Login Shell besitzen
RequireValidShell on
# Dem Benutzer root den Login verweigern
RootLogin off
# Die Benutzer in ihr Home Verzeichnis einsperren
DefaultRoot ~
</Global>
# Bestimmte Benutzer erlauben
<Limit LOGIN>
# Wir verbieten allen Benutzern den Login außer denen, die in der Gruppe ftpuser sind
# Damit hier keine Liste angegeben werden muss, negieren wir einfach die richtige Gruppe
DenyGroup !ftpuser
</Limit>
Port 21
MaxInstances 30
User proftpd
Group nogroup
Umask 022 022
AllowOverwrite on
TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log
<IfModule mod_quota.c>
QuotaEngine on
</IfModule>
<IfModule mod_ratio.c>
Ratios on
</IfModule>
<IfModule mod_delay.c>
DelayEngine on
</IfModule>
<IfModule mod_ctrls.c>
ControlsEngine on
ControlsMaxClients 2
ControlsLog /var/log/proftpd/controls.log
ControlsInterval 5
ControlsSocket /var/run/proftpd/proftpd.sock
</IfModule>
<IfModule mod_ctrls_admin.c>
AdminControlsEngine on
</IfModule>
Benutzer einrichten:
Code: Select all
addgroup ftpuser
adduser benutzer --ingroup ftpuser --shell /bin/false
Benutzer editieren und Standardverzeichnis zuweisen!!!
Die Shell /bin/false bewirkt, dass sich der Benutzer nicht lokal oder über SSH am System anmelden kann.
Nun noch die Besitzrechte setzen damit der Benutzer auch mit einem FTP Clienten Dateien hochladen kann.
Code: Select all
chown benutzer:ftpuser -R /var/www/vhosts/beispielverzeichnis
Den Dienst neu starten damit Konfiguration greift
Code: Select all
service proftpd restart