Table of Contents

ftp

ProFTPd

Créer un utilisateur

Il faut créer un utilisateur système :

useradd toto

On l'ajoute au groupe ftpusers :

adduser toto ftpusers

On vérifie que l'utilisateur n'est pas bloqué (càd présent) dans /etc/ftpusers, le fichier qui sert à bannir une liste d'utilisateurs.

Si on a touché au fichier de conf il faut recharger le serveur :

/etc/init.d/proftpd reload
 Reloading ftp server: proftpd.

Exemple de fichier de conf

# conf ftp pt3u

ServerName                      "pt3u's ftp server."
# lance ou non par inetd (standalone|inetd|xinetd)
ServerType                      standalone
DeferWelcome                    off
ServerIdent                     off
# uniquement en cas de virtualhost
DefaultServer                  on

MultilineRFC2228                on
# rend les liens symboliques visibles
#ShowSymlinks                   on

TimeoutNoTransfer               600
# pour un transfert de donnees stoppe
TimeoutStalled                  600
TimeoutIdle                     1200

# fichier contenant le message d'accueil
DisplayLogin                    welcome.msg
# fichier affiche lors du premier CWD (changedir) dans un rep
DisplayFirstChdir               .message
ListOptions                     "-l"
DenyFilter                      \*.*/

# Uncomment this if you are using NIS or LDAP to retrieve passwords:
#PersistentPasswd               off

# Uncomment this if you would use TLS module:
#TLSEngine                      on

# Uncomment this if you would use quota module:
#Quotas                         on

# Uncomment this if you would use ratio module:
#Ratios                         on

# Port 21 is the standard FTP port.
Port                            21

# To prevent DoS attacks, set the maximum number of child processes
# to 30.  If you need to allow more than 30 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)

# nb_max de processus fils pouvant etre lances
MaxInstances                    30

MaxLoginAttempts                3

# Set the user and group that the server normally runs at.
User                            nobody
Group                           nogroup

# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
# umask pour la creation de fichiers et de dossiers (respectivement)
Umask                           002  002
# permet l'ecrasement de fichier (si les droits sont corrects)
AllowOverwrite                  on

# Delay engine reduces impact of the so-called Timing Attack described in
# http://security.lss.hr/index.php?page=details&ID=LSS-2004-10-02
# It is on by default.
#DelayEngine                    off

#allow resuming (reprise sur dl/up)
AllowRetrieveRestart            on
AllowStoreRestart               on

Defaultroot                     /ftp/

PassivePorts                    50000 50049
MasqueradeAddress               82.x.y.z

#allow FXP
AllowForeignAddress             on

#eviter les temps de connex au demarrage
IdentLookups off
UseReverseDNS off

#seuls dude, people et roro peuvent se logger
<Limit LOGIN>
   Order allow,deny
   AllowUser dude people roro
   Deny from all
</Limit>

#<Limit DELE RMD CHMOD RNFR>
#   DenyAll
#</Limit>
##

Commandes bash

ftpwho

ftpwho [-v]
 standalone FTP daemon [18580], up for  1 hr 32 min
no users connected

ftpstats

Toutes les statistiques sur les fichiers téléchargés depuis l'installation de proftpd :

ftpstats

Cette commande analyse par défaut le fichier /var/log/xferlog (journal des connexions par défaut de proftpd) ; si on change ce fichier par la directive TransferLog /home/dude/xferlog dans proftpd.conf, il faut spécifier ce même fichier dans la commande ftpstats :

ftpstats -f /home/dude/xferlog

ftptop

Liste des utilisateurs connectés façon top :

ftptop

On quitte l'écran avec q et on affiche les taux de transfert avec t.

Liens