Proftpd traccia qualsiasi operazione nel file di log denominato xferlog. In effetti molti altri demoni FTP scrivono i log in un file con lo stesso nome e adottando lo stesso formato, quindi questa tip può interessare anche chi utilizza, ad esempio, Wu-Ftpd o altri FTP standard BSD.

Il file xferlog si trova di solito in una delle seguenti directory:

/var/log
/var/log/proftpd/xferlog
/var/www/vhosts/{DOMAIN}/statistics/logs/xferlog_regular*

L’ultimo caso particolare riguarda solo i server amministrati con Plesk.

L’ultimo carattere riportato in ogni riga del xferlog mostra il modo in cui si è completato il trasferimento. Se il carattere è “c” significa che l’operazione si è completata con successo; se il carattere è “i” significa - al constrario - che l’operazione non è stata copmpletata e il trasferimento ha avuto pertanto esito negativo.

Questo comando restituisce tutti i trasferimenti incompleti:

egrep "i$" /path/to/xferlog

I tre caratteri che seguono il nome del file rappresentano nell’ordine:

  1. il tipo di trasferimento (a=ascii, b=binary)
  2. ogni eventuale azione particolare intrapresa (di norma viene riportato il carattere “_” che corrisponde a “nessuna azione”)
  3. la direzione del trasferimento (o=outgoing, i=incoming, d=deleted)

Per estrarre - ad esempio - una lista di tutti i file uploadati con successo:

awk '($12 ~ /^i$/ && $NF ~ /^c$/){print $9}' /var/log/proftpd/xferlog

Al contrario, per estrarre una lista di tutti i file il cui upload è fallito:

awk '($12 ~ /^i$/ && $NF ~ /^i$/){print $9}' /var/log/proftpd/xferlog

Condividi:
  • del.icio.us
  • Google
  • Digg
  • Facebook
  • Technorati
  • YahooMyWeb
  • MySpace