Go to content Go to menu Go to search

Шпаргалка по vsftpd (или как дать заказчикам доступ к своим сайтам)

Постановка задачи

Имеется сервер с LAMP на котором размещены сайты заказчиков. (хостинг короче)
Задача – дать каждому заказчику доступ к своему сайту по ftp.
Будем использовать vsftpd + виртуальных пользователей

Решение

/etc/vsftpd/vsftpd.conf:

anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
chroot_local_user=YES
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd/chroot_list
chmod_enable=YES
chown_uploads=YES
chown_username=apache
guest_enable=YES
guest_username=apache
local_umask=0000
#anon_umask=777
file_open_mode=0755
listen=YES
#listen_port=10021
pasv_min_port=30000
pasv_max_port=30999
xferlog_std_format=YES
xferlog_file=/var/log/vsftpd.log
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/users/
virtual_use_local_privs=YES
pasv_promiscuous=YES

Список виртуальных пользователей будет храниться в файле /etc/vsftpd/logins, в формате:

<login1>
<password1>
<login2>
<password2>

vsftpd пароли берет из базы /etc/vsftpd/logins.db, которую нужно создать из файла logins командой:

db_load -T -t hash -f logins logins.db

в папке /etc/vsftpd/users создаем для каждого пользователя файл, в котором указываем его домашний каталог в формате:

local_root=<путь к сайту заказчика>

например:

local_root=/var/www/potencial.pro

файл /etc/vsftpd/user_list содержит логины, которые мы заблокировали


при публикации материалов с данного сайта обратная ссылка на сайт обязательна.
valynkin.ru © no rights reserved