Пароль пользователя не работает vsftpd сервер

Я создал пользователя с:

useradd -m -s /bin/false testuser

Также я добавил vsftpd.user_list 'testuser' и изменил пароль с помощью passwd. После перезапуска службы vsftpd я хотел войти на сервер, но получил ошибку 530 (неверный вход). Почему я не могу войти на сервер? С пользователем по умолчанию, который был создан при установке сервера, все работает. Зачем?

Спасибо

3 ответа

Решение

Я решил это с помощью переустановки vsftpd. Теперь пользователь работает.

У меня была похожая ситуация в прошлом, в моем случае проблема заключалась в том, что /bin/false это не оболочка (Извините, не могу объяснить лучше, забыл фон. Я думаю, что это как-то связано с PAM.)

Многие старые уроки рекомендуют настройки /bin/false в качестве оболочки для пользователей без входа в систему, но лучший выбор /usr/sbin/nologin,

Попробуйте установить /usr/sbin/nologin в качестве оболочки входа для пользователей FTP:

usermod -s /usr/sbin/nologin USERNAME

Затем попробуйте войти снова.

@lxg Вы были очень близки к тому, чтобы сделать это.

я согласна с тем что /usr/sbin/nologin не является оболочкой, потому что вы не добавили ее в /etc/shells, Так что, если вы добавите эту строку в файл оболочек, например, так:

# / etc / shells: допустимые логины
/ Бен / ш
/ Бен / тире
/ Бен / Баш
/ Бен / rbash
/ USR / SBIN / NOLOGIN

Это решает проблему.

Конечно, команда для входа в систему как пользователь, вы должны использовать

 usermod -s /usr/sbin/nologin USERNAME

и сопоставьте разрешения общего каталога.

Для отката возможности входа в систему просто используйте:

usermod -s / bin / bash USERNAME 

КСТАТИ. Только так у меня работает на Ubuntu 16.04.

Другие вопросы по тегам