Řešení 1:
Převzato odtud
O) Pomoc! Místní uživatelé se nemohou přihlásit.
A) There are various possible problems.
A1) By default, vsftpd disables any logins other than anonymous logins. Put
local_enable=YES in your /etc/vsftpd.conf to allow local users to log in.
A2) vsftpd tries to link with PAM. (Run "ldd vsftpd" and look for libpam to
find out whether this has happened or not). If vsftpd links with PAM, then
you will need to have a PAM file installed for the vsftpd service. There is
a sample one for RedHat systems included in the "RedHat" directory - put it
under /etc/pam.d
A3) If vsftpd didn't link with PAM, then there are various possible issues. Is
the user's shell in /etc/shells? If you have shadowed passwords, does your
system have a "shadow.h" file in the include path?
**A4) If you are not using PAM, then vsftpd will do its own check for a valid
user shell in /etc/shells. You may need to disable this if you use an invalid
shell to disable logins other than FTP logins. Put check_shell=NO in your
/etc/vsftpd.conf.**
Jste případ A4
Řešení 2:
Podívejte se na check_shell v man vsftpd.conf:
Note! This option only has an effect for non-PAM builds of vsftpd.
If disabled, vsftpd will not check /etc/shells for a valid user
shell for local logins.
Default: YES
Do /etc/shells můžete přidat /usr/sbin/nologin. Jednoduché a snadné řešení.
Dalším je změna konfigurace vsftpd.conf/PAM.
Zakomentujte tento řádek "auth ..." v případě PAM:
$ grep shells /etc/pam.d/vsftpd
auth required pam_shells.so
OOM zabiják zabíjející věci se spoustou (?) volné RAM
Upstart:spuštění služby po procesu, který není spuštěn