Установка и базовая настройка vsFTPd
Обновляем систему и запускаем установку
1 2 |
$ yum update $ yum install vsftpd |
Открываем конфиг для редактирования /etc/vsftpd/vsftpd.conf
Добавляем в конфиг следующие строки:
1 2 3 4 5 |
anonymous_enable=NO #запретить подключение анонимных пользователей chroot_local_user=YES #запрет выхода пользователю за пределы домашней директории allow_writeable_chroot=YES #разрешить подключение пользователю с правами на запись в корневую директорию pasv_min_port=40900 #диапазон динамических портов, которые будут использоваться vsFTPd pasv_max_port=40999 |
Если включен SELinux, то отключаем его и автозапуск:
1 2 |
$ setenforce 0 $ sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config |
Добавляем правила в firewall для корректной работы ftp-сервера:
1 2 3 |
$ firewall-cmd --permanent --add-port=20-21/tcp $ firewall-cmd --permanent --add-port=40900-40999/tcp $ firewall-cmd --reload |
Создание ftp-пользователя
FTP протокол открытый и достаточно уязвимый, поэтому лучше не пытаться подключиться к ftp-серверу используя данные реального пользователя системы. Для большей безопасности разработчики vsFTPd запретили по-умолчанию подключаться с использованием учётной записи root. Для подключения к Ftp-серверу следует создать новую учётную запись, которая будет использоваться только и исключительно для работы с vsFTPd:
1 2 3 4 |
$ useradd ftpuser1 -d /var/www -s /sbin/nologin #/var/www — домашняя директория #/sbin/nologin запрет локального входа в систему. $ passwd ftpuser1 #пароль для нового пользователя |
Разрешаем автозапуск vsFTPd и запускаем его:
1 2 |
$ systemctl enable vsftpd $ systemctl start vsftpd |
Можно пробовать подключиться к FTP-серверу.
В случае, если будет возникать ошибка 530 Login Failed, то следует в файл /etc/shells добавить строку /sbin/nologin, так как это часть «оболочки» ввода пароля пользователя.
Свежие комментарии