Установка vsftpd на OpenSuSE 12.2 с поддержкой русского и виртуальных пользователей.

Качаем vsftpd ext с поддержкой перекодировки на лету:
wget http://vsftpd.devnet.ru/files/3.0.2/packages/rhel6/vsftpd-3.0.2-1.el6.i686.rpm
делаем ссылки на библиотеки которые иначе называются
ln -s /lib/libssl.so.1.0.0 /lib/libssl.so.10
ln -s /lib/libcrypto.so.1.0.0 /lib/libcrypto.so.10
установка vsftpd
rpm -ivh --nodeps /home/install/vsftpd-3.0.2-1.el6.i686.rpm
Пишем пользователей в файд /home/user/tmp/ftpusers в формате:
user1
passwd1
user2
passwd2
В конце перевод строки. Генерируем базу пользователей в Berkeley DB
db45_load -T -t hash -f /home/user/tmp/ftpusers /etc/vsftpd/users.db
В /etc/vsfpd/vsftpd.conf пишем:
local_enable=YES
pam_service_name=vsftpd
virtual_use_local_privs=YES
user_sub_token=$USER
local_root=/home/$USER
local_charset=UTF8
remote_charset=CP1251
convert_charset_enable=YES
В /etc/pam.d/vsftpd добавляем:
auth required pam_userdb.so db=/etc/vsftpd/users account required pam_userdb.so db=/etc/vsftpd/users
Права на каталог пользователя должны быть без разрешения на запись, иначе возникает ошибка: 
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
Копируем rc скрипт от родного для OpenSuSE vsftpd. Выложил тут на всякий случай.

Комментарии

Отправить комментарий