Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
linux_faq:vsftpd-и-виртуальные-пользователи-virtual-users-on-debian [2019/09/09 08:07] adminlinux_faq:vsftpd-и-виртуальные-пользователи-virtual-users-on-debian [2020/04/09 18:43] (current) admin
Line 1: Line 1:
 +====== Виртуальные пользователи в VsFTPD под Ubuntu/Debian ======
 +Ставим необходимые компоненты:
 +<code>apt-get install libpam-pwdfile vsftpd apache2-utils</code>
  
 +Предположим, что сайтики лежат в **/srv/www/mysite.ru/htdocs** , соответственно ограничиваем пользователя доступом в корневую директорию. \\
 +Чистим дефолтный конфиг vsftpd\\
 +  mv /etc/vsftpd.conf /etc/vsftpd.conf_bak
 +И записываем туда вот что: \\
 +<code>listen=YES
 +anonymous_enable=NO
 +local_enable=YES
 +write_enable=YES
 +local_umask=022
 +nopriv_user=vsftpd
 +virtual_use_local_privs=YES
 +guest_enable=YES
 +user_sub_token=$USER
 +local_root=/srv/www/$USER
 +chroot_local_user=YES
 +hide_ids=YES
 +chown_uploads=YES
 +chown_username=vsftpd
 +guest_enable=YES
 +guest_username=vsftpd
 +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</code>
 +
 +Создаем пользователя **vsftpd** (системным без шела)\\
 +  useradd -M -r vsftpd
 +
 +Далее надо настроить **pam**-аутентификацию.\\
 +Для этого открываем файлик **/etc/pam.d/vsftpd**, комментим всё и добавляем туда две строчки:\\
 +  auth required pam_pwdfile.so pwdfile /etc/ftpdpasswd
 +  account required pam_permit.so
 +
 +Теперь создаем файлик **/etc/ftpdpasswd**:
 +  touch /etc/ftpdpasswd
 +  htpasswd -c /etc/ftpdpasswd
 +Добавление пользователя осуществляется аналогично, только без опции **-с** и с названием корневой директории сайта в качестве пользователя:\\
 +  htpasswd /etc/ftpdpasswd www.mysite.ru
 +
 +Если возникает ошибка **cannot change directory** Надо дать права на исполнение для директории **/home/vsftpd/** и для директории заданной в файле **/etc/vsftpd.conf** параметром **local_root=**:
 +  setfacl -m u:vsftpd:x /home/vsftpd/
 +  setfacl -m u:vsftpd:xrw /mnt/shared/new/XenApp/
 +Ребутим **vsftpd** и радуемся..
  • linux_faq/vsftpd-и-виртуальные-пользователи-virtual-users-on-debian.txt
  • Last modified: 2020/04/09 18:43
  • by admin