На заметку..
Пакеты:
apt-get install libpam-pwdfile vsftpd
Предположим, что сайтики лежат в /srv/www/{sitename — вида www.mysite.ru}/htdocs , соответственно ограничиваем пользователя доступом в корень, т.е. не выше директории www.mysite.ru.
И так чистим дефолтный конфиг vsftpd
echo "" > /etc/vsftpad.conf
И записываем туды следующие..
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
# пользователя vsftpd нужно создать системным без шела, например useradd -M -r vsftpd
nopriv_user=vsftpd
virtual_use_local_privs=YES
guest_enable=YES
user_sub_token=$USER
# Токен $USER предполагает что к пути /srv/www/ будет добавлено имя пользователя, он и будет являться корнем для него.
local_root=/srv/www/$USER
chroot_local_user=YES
hide_ids=YES
guest_username=vsftpd
chown_uploads=YES
# От имени и группы www-data пашет Apache.
chown_username=www-data
guest_enable=YES
guest_username=www-data
chown_upload_mode=0775
use_localtime=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
dirmessage_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome developer to WWW server!
ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd/empty
pasv_enable=YES
pasv_min_port=62000
pasv_max_port=64000
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
# пользователя vsftpd нужно создать системным без шела, например useradd -M -r vsftpd
nopriv_user=vsftpd
virtual_use_local_privs=YES
guest_enable=YES
user_sub_token=$USER
# Токен $USER предполагает что к пути /srv/www/ будет добавлено имя пользователя, он и будет являться корнем для него.
local_root=/srv/www/$USER
chroot_local_user=YES
hide_ids=YES
guest_username=vsftpd
chown_uploads=YES
# От имени и группы www-data пашет Apache.
chown_username=www-data
guest_enable=YES
guest_username=www-data
chown_upload_mode=0775
use_localtime=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
dirmessage_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome developer to WWW server!
ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd/empty
pasv_enable=YES
pasv_min_port=62000
pasv_max_port=64000
Далее надо настроит pam аутентификацию, для сего лезим в /etc/pam.d/vsftpd и комментим все попутно добавив туда две строчки
auth required pam_pwdfile.so pwdfile /etc/ftpd.passwd
account required pam_permit.so
account required pam_permit.so
Собственно создаем файлик /etc/ftpd.passwd командой
htpasswd -c /etc/ftpd.passwd
Добавление пользователя осуществляется аналогично, только без опции -с и с названием корневой директории сайта в качестве пользователя
htpasswd /etc/ftpd.passwd www.mysite.ru
Ребутим vsftpd и радуемся..