Dans la configuration utilisée ici, le service ne démarre pas directement par lui même mais par l'intérmédaire du super-serveur xinetd. L'activation ou la suspension du service est donc gérée dans la configuration de xinetd (voir Section 7.4.3, « Suspendre le service »).
L'arret/redémarrage/reconfiguration de xinetd utilise un script SysV
standard que l'on peut appeler par invoke-rc.d ou
directement avec /etc/init.d/xinetd
.
ProFTPd permet de surveiller l'activité du serveur en temps réèl grâce à ftpwho et ftptop. La première permet de lister les clients connectés, leur durée de connexion et la commande en cours d'exécution :
root@ubuntu:~# ftpwho
inetd FTP daemon:
no users connected
root@ubuntu:~# ftpwho
inetd FTP daemon:
4329 alice [ 0m17s] 0m11s idle
Service class - 1 user
root@ubuntu:~#
ftptop donne les même informations mais rafraichies en continue, à l'image de top(1).
La commande ftpshut permet de couper immédiatement le
service ftp. Cette command crée un fichier spécial
/etc/shutmsg
qui indique à ProFTPd de ne plus accepter de
connexions. Il faudra donner à ftpshut un paramètre temporel
pour indiquer quand couper le service. Ces paramètre peut
être now
(coupure immédiate),
+N
(coupure dans N minutes) ou
HHMM
(coupure à HH heures et MM minutes).
On pourra aussi préciser en deuxième paramètre un message qui sera renvoyé
aux clients.
Lorsqu'un client tentera de se connecter au serveur, il sera informé de
l'arrêt du serveur :
Coupure du service sur le serveur
root@ubuntu:~# ftpshut now "Coupure pour maintenance"
Tentative de connexion
alice@linus:~$ ftp-ssl 192.168.17.139
Connected to 192.168.17.139.
500 FTP server shut down (Coupure pour maintenance) -- please try again later
ftp> quit
alice@linus:~$
On pourra par la suite réatblir le service avec l'argument
-R
:
root@ubuntu:~# ftpshut -R ftpshut: /etc/shutmsg removed root@ubuntu:~#
ProFTPD fournit des logs très complets, regroupés sous
/var/log/proftpd/
.
/var/log/proftpd/proftpd.log
: informations
générales sur le fonctionnement du serveur, connexions réussies ou échouées,
etc... C'est le fichier qu'il faut surveiller pour repérer les attaques par
force brute.
/var/log/proftpd/xferlog
: ce log contient la
liste de tous les fichiers tranférés vers ou depuis le serveur, le type des
fichiers, etc.. On se réfèrera à xferlog(5) pour une description exhaustive du
fichieir de log.
/var/log/proftpd/tls.log
: détaille les
opérations liées au module TLS permettant de créér un canal de communication
chiffré (voir Section 10.3.2, « FTP/TLS » à ce
sujet). Ces informations peuvent être intéressantes pour diagnostiquer des
problèmes ponctuels, ou pour vérifier au déploiement que TLS fonctionne
correctement. On pourra par contre supprimer la directive
TLSLog
pour éviter de remplir ce fichier
lorsque le serveur fonctionne correctement en production.