А вы знали?

Мы разрабатываем Wiki для клиентов, определяя наиболее важные и востребованные вопросы

Общие вопросы

Установка vsFTPd на CentOS

Время чтения: 1 мин. 375 просмотров
FTP сервер vsftpd (Very Secure FTP daemon) является одним из надежнейших и простых в настройке ftp-серверов. Это оптимальный выбор для большинства пользователей, которым нужен качественный и надежный FTP-сервер. Данный пример описывает процесс пошаговой установки FTP-сервера с аутентификацией по конкретному системному пользователю, с запретом анонимного доступа.

Установку можно производить из репозитория:

yum install vsftpd

Далее следует определиться, какая нужна аутентификация, как аноним или от пользователя системы, естественно, лучше анонима сразу зарезать в конфиге, но об этом чуть позже.

После установки создаем нового пользователя и определяем ему пароль.

useradd ftpuser
passwd ftpuser

Заходим в файл /etc/passwd
Находим созданного пользователя, запрещаем ему SSH-доступ (/sbin/nologin) и определяем папку для доступа (/home/www):

ftpuser:x:500:101:My own FTP-user:/home/www:/sbin/nologin

Далее, смотрим какой группе принадлежит пользователь, подсовываем юзеру нужную группу, в вышеописанном примере это группа с номером 101 (ИН пользователя 500).

cat /etc/group

В данном случае ИН группы nginx – 101:

...
sshd:x:74:
nginx:x:101:
apache:x:48:
...

После выставляем папке права для пользователя и группы:

chown fptuser:nginx /home/www

И лезем в конфиг, тут запрещаем анониму доступ:

# Запрещаем анонимам доступ к FTP
anonymous_enable=NO

# Позволяем локальным пользователям системы доступ к FTP
local_enable=YES

# Даем возможность для записи файлов
write_enable=YES

# Запрещаем заливать любое файло анониму
anon_upload_enable=NO
# Запрещаем создавать папки анониму
anon_mkdir_write_enable=NO

Далее, нужно раскомментировать следующие параметры:

# Активируем сообщения директорий, когда пользователь переходит в определенную директорию
dirmessage_enable=YES

# Активируем логгирование закачки/скачки файлов
xferlog_enable=YES

# Переназначаем директорию, для логов, если необходимо
xferlog_file=/var/log/vsftpd.log

# Окно приветствия, при входе на FTP
ftpd_banner=Welcome to my own FTP service.

# Следующий параметр chroot'ит залогиненных пользователей, т.е. не дает им выходить за пределы своей рабочей директории
chroot_local_user=YES

# Разрешаем слушать запросы поступаемые по IPv4-сокетам в постоянном режиме
listen=YES
# Данный параметр включает поддержку пассивного режима
pasv_enable=YES
# Если необходимо открыть порты, строго определенного диапазона, используйте следующие параметры:
pasv_min_port=30000
pasv_max_port=40000
port_enable=yes

И главный момент, который необходимо добавить, чтобы разрешить локальным пользователям системы доступ к FTP (не означенный в конфиге по умолчанию):


# Разрешаем использование юзерлиста, в котором определяем пользователей системы, которым в любом случае(!) запрещать доступ к FTP
userlist_enable=YES

# Это и есть список, который определяет недопустимых пользователей
userlist_file=/etc/vsftpd/user_list

Добавляем vsFTPd в автозагрузку и рестартим его.

chkconfig vsftpd on
service vsftpd restart

Если у вас возникли трудности при выполнении данной инструкции, пожалуйста, напишите нам в чат или в тикетную систему: https://gohost.kz/submitticket.php с указанием возникшей проблемы.

Мы обязательно рассмотрим вашу заявку!

Leave a Comment

Поделиться этой статьёй

Установка vsFTPd на CentOS

Или скопируйте ссылку