Server/FTP

Aus Wiki StuRa HTW Dresden
Version vom 5. Dezember 2015, 02:27 Uhr von Matthias Jakobi (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „== Installation == Mit grafischer Oberfläche: apt-get install gadmin-proftp kann aber auch über Konfigurationsdatei eingestellt werden. == Konfiguration…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Installation

Mit grafischer Oberfläche:

apt-get install gadmin-proftp

kann aber auch über Konfigurationsdatei eingestellt werden.


Konfiguration

vim /etc/proftpd/conf.d/custom.conf
# Ftp user doesn't need a valid shell
<Global>
   RequireValidShell off
</Global>
# If desired turn off IPv6
UseIPv6 off
# Default directory is ftpusers home
DefaultRoot ~ ftpuser
# Limit login to the ftpuser group
<Limit LOGIN>
   DenyGroup !ftpuser
</Limit>

Nutzer anlegen

Für den FTP Zugriff wird ein eigener Benutzer erstellt, ohne gültiger Login Shell und mit dem Homeverzeichnis /var/www/upload:

$ adduser ftpuser --shell /bin/false --home /var/www/upload
Adding user `ftpuser' ...
Adding new group `ftpuser' (1001) ...
Adding new user `ftpuser' (1001) with group `ftpuser' ...
Creating home directory `/var/www/upload' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
[...]

Anonymous Account

Um einen anonymen Lesezugriff zu erlauben wird folgende Datei erstellt:

$ vim /etc/proftpd/conf.d/anon.conf
<Anonymous ~ftpuser>
       User    ftp
       Group   ftp
       # Users can also login with ftp
       UserAlias       anonymous       ftp
       # All files belong to ftp
       DirFakeUser on ftp
       DirFakeGroup on ftp
       RequireValidShell       off
       MaxClients      10
       <Directory *>
               <Limit WRITE>
               DenyAll
               </Limit>
       </Directory>
</Anonymous>

Damit der Benutzer ftp auf den anonymen FTP-Bereich zugreifen darf, muss er der Gruppe ftpuser hinzugefügt werden:

$ adduser ftp ftpuser
Adding user `ftp' to group `ftpuser' ...
Adding user ftp to group ftpuser
Done.