<a name="top"></a>

Установка и настройка FTP-сервера vsftpd

Экспорт в PDF

Дата создания: 2025/06/19 05:46 (C) mihanik

<a href='javascript:history.back();'><img src=/lib/exe/fetch.php/level_up.png height=35 width=50></a>

Дано.

Сервер под управлением ОС Linux семейства Red Hat

Надо.

Чтобы сервер выполнял роль FTP-сервера.

Решение.

Договоримся, что в качестве FTP-сервера будем использовать vsftpd.

Установка vsftpd.

yum -y install vsftpd
Я очень часто использую epel-репозиторий, поэтому всегда его сначала устанавливаю. yum install -y epel-release

Добавим в сетевой экран разрешения для подключения по протоколу FTP.

Порты с 40000 по 50000 будут использоваться для пассивных подключений. Подробности ТУТ.
firewall-cmd --add-service=ftp --permanent firewall-cmd --add-port=40000-50000/tcp --permanent firewall-cmd --reload

Настройка FTP-сервера.

Сначала делаем резервную копию файла с настройками.

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.orig

Открываем файл с настройками и начинаем его редактировать

mcedit /etc/vsftpd/vsftpd.conf

Внутри файла меняем настройки

Если хотим отключить анонимный доступ, то меняем

anonymous_enable=YES

на

anonymous_enable=NO

Также раскоментируем

chroot_local_user=YES

И сразу после этой строки добавляем

allow_writeable_chroot=YES
Причина добавления строки описана тут: http://agapoff.name/vsftpd-oops.html

И в самый конец конфигурационного файла добавляем настройки подключения для пассивного режима и анонимных пользователей.

########################################################################### # # Point users at the directory we created earlier. anon_root=/mnt/ftp/pub/ # # Stop prompting for a password on the command line. no_anon_password=YES # # Show the user and group as ftp:ftp, regardless of the owner. hide_ids=YES # # Limit the range of ports that can be used for passive FTP pasv_min_port=40000 pasv_max_port=50000
Важно! Папка предназначенная для анонимных пользователей (anon_root) должна иметь разрешения 755, иначе при попытке получить доступ к этой папке по FTP можно получить ошибку вида: «vsftpd: refusing to run with writable anonymous root»

Напомню, что поменять разрешения на папку можно командой:

chmod 755 /<путь_к_папке>

Включаем и запускаем vsftpd

systemctl enable vsftpd.service systemctl start vsftpd.service

Готово.

Теперь каждый пользователь сервера сможет получать доступ к своей домашней папке по протоколу FTP.

Ссылки

https://serveradmin.ru/ustanovka-i-nastroyka-ftp-servera-na-centos-7/?ysclid=mcbn0mq28q300923157

⇑ Наверх ⇑

В моей WIKI постоянно ведётся какая-то работа со статьями. Если у вас возникли вопросы или замечания, можете их отправлять на почту support@mihanik.net