Depuis la version 1.1.2 (version supérieure à celle qui était dans
Debian Woody, donc on ne pouvait pas en profiter), vsftpd
permet d'adapter une configuration particulière en fonction de l'adresse
IP du client.
L'implémentation ressemble (un peu) à de la bidouille avec l'utilisation
de tcp_wrapper. C'est-à-dire que lors d'une connexion
provenant d'une adresse donnée, tcp_wrapper va initialiser
une variable d'environnement (VSFTPD_LOAD_CONF par exemple)
indiquant à vsftpd qu'il faut une configuration
spécifique qui va s'appliquer sur la configuration globale.
Dans les faits, ca se fait comme ca :
% grep tcp_wrapper /etc/vsftpd.conf tcp_wrappers=YES % grep vsftpd /etc/hosts.allow vsftpd:192.168.19.88:setenv VSFTPD_LOAD_CONF /etc/vsftpd_special_guest.conf
Ainsi, la configuration special guest surchargera les réglages globaux. On pourra, par exemple, n'autoriser que l'écriture dans certains répertoires en anonymous, le téléchargement, le listing de (certain) fichiers (Merci A. !), etc.
Alors ? Qui a dit que vsftpd était pauvre en
fonctionnalité ? Ok, sa configuration diffère totalement d'autres
serveurs FTP réputés user-friendly, mais pourquoi pas utiliser des outils
reconnus, même si ils sont vieux ?