vsftpd не учитывает userlist_enabled

Вопрос или проблема

У меня есть сервер vsftp с такой конфигурацией, работающей на ubuntu 22.04:

listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=NO
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/<скрыто>
rsa_private_key_file=/etc/<скрыто>
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
pasv_min_port=60000
pasv_max_port=60002
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO

Я ожидал, что сервер vsftp разрешит доступ только пользователям из /etc/vsftpd.userlist, но он позволяет доступ любому локальному пользователю.

Я попробовал установить local_enable=NO. Это не дало никакого эффекта.

/etc/vsftpd.userlist содержит только двух пользователей.

Есть идеи?

Файл по умолчанию это /etc/vsftpd.user_list (обратите внимание на нижнее подчеркивание), в то время как вы указали /etc/vsftpd.userlist (без нижнего подчеркивания).

Пожалуйста, восстановите расположение по умолчанию, убрав строку с userlist_file=/etc/vsftpd.userlist и убедитесь, что ваш файл списка пользователей в /etc называется vsftpd.user_list (с нижним подчеркиванием).

Затем перезапустите сервис vsftpd.

Я заметил, что отключение ssl снова заставляет работать список пользователей. Похоже, использование ssl несовместимо со списком пользователей.

Ответ или решение

Решение проблемы с конфигурацией vsftpd и параметром userlist_enabled

Если ваш сервер vsftpd не учитывает параметр userlist_enabled, и вы хотите разрешить доступ только определенным пользователям, указанным в файле /etc/vsftpd.userlist, важно обратить внимание на несколько аспектов настройки и конфигурации. Давайте рассмотрим это более подробно.

1. Проверка конфигурации

Согласно вашему описанию, вы используете следующую конфигурацию:

listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=NO
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/<hidden>
rsa_private_key_file=/etc/<hidden>
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
pasv_min_port=60000
pasv_max_port=60002
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO

Существуют некоторые ключевые моменты, которые необходимо проверить:

  • Путь к файлу userlist: Обычно файл по умолчанию называется /etc/vsftpd.user_list (с подчеркиванием). Убедитесь, что вы используете именно это имя, либо скорректируйте ваш файл /etc/vsftpd.userlist на нужный путь и имя.

  • Положение параметра userlist: Если вы оставили строку userlist_file=/etc/vsftpd.userlist, рассмотрите возможность её удаления и замены на стандартное имя, как упоминалось выше. Также обратите внимание на значение userlist_deny. Если оно установлено в NO, это означает, что разрешен доступ только указанным пользователям.

2. Проблемы с SSL

По вашим замечаниям, отключение SSL улучшает работу userlist. Действительно, существует вероятность, что некоторые конфигурации SSL могут конфликтовать с поведением сервера относительно управления пользователями.

  • Проблемы совместимости: Убедитесь, что версии vsftpd и используемых библиотек SSL/TLS совместимы между собой. В некоторых версиях могут существовать известные проблемы, которые вызывают некорректное поведение параметров доступа.

  • Проверка журналов: Включите логирование для лучшего понимания, что происходит. Логи могут содержать полезную информацию о том, какие пользователи и при каких условиях осуществляют попытки подключения.

3. Рекомендации по оптимизации

  • Обновление пакетов: Убедитесь, что ваш сервер Ubuntu полностью обновлен. Используйте команды sudo apt update и sudo apt upgrade для этого.

  • Тестирование конфигурации: После внесения изменений обязательно перезапустите сервис vsftpd: sudo systemctl restart vsftpd. Рекомендуется также использовать команду для проверки конфигурации: sudo vsftpd /etc/vsftpd.conf.

Заключение

Каждое из предложенных решений требует тщательной проверки и тестирования. Основная цель – обеспечить безопасность вашего FTP-сервера и поддерживать корректную работу доступа для пользователей. Если проблема сохраняется, стоит обратиться к документации vsftpd и форумам поддержки, где можно получить дополнительное понимание специфики версий и особенностей конфигурации.

Оцените материал
Добавить комментарий

Капча загружается...