Конфигурация Pureftpd не соблюдается
Я установил Pureftpd 16.04, но я пытаюсь настроить его так, как я хочу.
Я хочу, чтобы обычные пользователи системы не могли войти в систему, поэтому у меня есть файл /etc/pure-ftpd/conf/UnixAuthentication
с содержанием no
и символическая ссылка /etc/pure-ftpd/auth/65unix
в /etc/pure-ftpd/conf/UnixAuthentication
, Когда я перезагружаю сервер pureftpd, я все еще могу войти в систему с любым системным пользователем.
Я пытался удалить ссылку с содержанием no
и символическая ссылка /etc/pure-ftpd/auth/65unix
, но я все еще могу войти.
Когда я перезагружаю сервер, я использую systemctl restart.
Похоже, что конфигурация не соблюдается сервером. Как я могу сделать так, чтобы pureftpd не позволял входить обычным пользователям?
ОБНОВИТЬ
Итак, файлы конфигурации соблюдаются. По крайней мере, те, для MinUID
а также NoAnonymous
, Это просто, что изменение содержимого /etc/pure-ftpd/conf/UnixAuthentication
от да к нет не имеет никакого эффекта. Либо этот параметр конфигурации не работает так, как я ожидал, и не позволяет системным пользователям войти в систему, либо этот параметр не работает.
ДАЛЬНЕЙШЕЕ ОБНОВЛЕНИЕ
Просто обнаружил команду pure-ftpd-wrapper --show-options
который показывает, с какими опциями работает pure-ftpd. Когда я устанавливаю содержимое /etc/pure-ftpd/conf/UnixAuthentication
Нет, вывод pure-ftpd-wrapper --show-options
является
-J ALL:!aNULL:!SSLv3 -u 1000 -8 UTF-8 -E -O clf:/var/log/pure-ftpd/transfer.log -g /var/run/pure-ftpd/pure-ftpd.pid
Когда я установил его на да, вывод
-l unix -J ALL:!aNULL:!SSLv3 -u 1000 -8 UTF-8 -E -O clf:/var/log/pure-ftpd/transfer.log -g /var/run/pure-ftpd/pure-ftpd.pid
Страница руководства для чистого ftpd говорит -l unix For standard (/etc/passwd) authentication.
Я не понимаю, почему чистый ftpd без -l unix
Параметры позволяют пользователям входить в систему, проходя аутентификацию с использованием стандартной учетной записи linux (/etc/passwd).
1 ответ
Таким образом, похоже, что при отсутствии методов аутентификации явно установить Pureftpd по умолчанию для стандартной аутентификации Unix из /etc/passwd. Это правда, даже когда etc/pure-ftpd/conf/UnixAuthentication
явно установлен на нет!
Кажется, существует несоответствие между чистым ftpd-оберткой и самим чистым ftpd. Pure-ftpd имеет только ключи командной строки для явного включения метода аутентификации, но не для явного исключения метода. Тем не менее, на странице руководства чисто ftpd-wrapper написано
To disable the option use "No",0 or "Off".
но на самом деле все, что он может сделать, - это не передавать ключ 'on' в аргументы командной строки pure-ftpd, поскольку pure-ftpd не принимает никаких флагов отключения.
Поскольку pure-ftpd возвращается к Unix-аутентификации в отсутствие любого другого типа аутентификации, наличие флага "Off" не совпадает с отсутствием флага "On"!
Включив проверку подлинности PureDB, я смог отключить стандартную проверку подлинности Unix, так как она, по-видимому, присутствует по умолчанию.