Das Problem
Der Vsftp-Server ist neu installiert und wurde hochgefahren, kann jedoch von bestimmten Benutzern nicht aufgerufen werden und gibt den unten gezeigten Fehler aus.
# service vsftpd status vsftpd (pid 5806) is running...
# ftp localhost Connected to localhost.localdomain. 220 (vsFTPd 2.0.5) 530 Please login with USER and PASS. KERBEROS_V4 rejected as an authentication type Name (localhost:oracle): user 530 Permission denied. Login failed.
Die Lösung
Die Ursache liegt darin, dass der Parameter userlist_enable in der Datei /etc/vsftpd/vsftpd.conf ist JA und den Parameter userlist_deny Standardwert ist ebenfalls YES , dann den Benutzernamen in der Datei /etc/vsftpd/user_list erhält „530 Berechtigung verweigert ‘Fehler und fordert nicht einmal zur Eingabe eines Passworts auf.
Wenn der Parameter userlist_enable aktiviert ist, lädt vsftpd die Benutzernamen in die Datei /etc/vsftpd/userlist_file. Wenn ein Benutzer versucht, sich mit einem Namen in dieser Datei anzumelden, wird er abgelehnt, bevor er nach einem Passwort gefragt wird. Dies kann nützlich sein, um zu verhindern, dass Klartext-Passwörter übertragen werden.
Der Parameter userlist_deny wird überprüft, wenn userlist_enable aktiviert ist. Wenn Sie diese Einstellung auf NO setzen, können sich Benutzer anmelden, wenn sie in der Datei /etc/vsftpd/userlist_file aufgeführt sind.
Hinweis :Aus Sicherheitsgründen sollte userlist_enable auf „YES“ gesetzt werden, da dieses Problem auch gelöst werden kann, indem „userlist_enable=NO“ in /etc/vsftpd/vsftpd.conf gesetzt wirdWir können dieses Problem also lösen, indem wir userlist_deny festlegen auf NEIN wenn userlist_enable aktiviert ist. Tragen Sie dann die erlaubten Benutzernamen in die Datei /etc/vsftpd/user_list und die nicht erlaubten Benutzernamen in die Datei /etc/vsftpd/ftpusers.
einDie Erklärung finden Sie im Handbuch von vsftpd.conf.
$ man vsftpd.conf userlist_deny This option is examined if userlist_enable is activated. If you set this setting to NO, then users will be denied login unless they are explicitly listed in the file specified by userlist_file. When login is denied, the denial is issued before the user is asked for a password. userlist_enable If enabled, vsftpd will load a list of usernames, from the filename given by userlist_file. If a user tries to log in using a name in this file, they will be denied before they are asked for a password. This may be useful in preventing cleartext passwords being transmitted. See also userlist_deny. Default: NO
Sie können diese Kommentare auch in der Datei /etc/vsftpd/user_list .
sehen# vsftpd userlist # If userlist_deny=NO, only allow users in this file # If userlist_deny=YES (default), never allow users in this file, and # do not even prompt for a password. # Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers # for users that are denied.
Zulassen, dass sich ein lokaler VSFTP-Server-Benutzer anmeldet
1. Bearbeiten Sie /etc/vsftpd/vsftpd.conf und setzen Sie userlist_enable auf JA und userlist_deny auf NEIN .
# vi /etc/vsftpd/vsftpd.conf userlist_enable=YES userlist_deny=NO
2. Ändern Sie /etc/vsftpd/user_list , tragen Sie den Benutzer (user01) in diese Datei ein, der sich anmelden darf
# cat /etc/vsftpd/user_list user01
3. Legen Sie alle Benutzer, denen FTP nicht gestattet ist, in /etc/vsftpd/ftpusers ab .
# cat ftpusers # Users that are not allowed to login via ftp root bin daemon adm lp sync shutdown halt mail news uucp operator games nobody
4. Starten Sie den vsftpd-Dienst neu.
# service vsftpd restart
5. Versuchen Sie FTP erneut mit Benutzer – user01.
$ ftp localhost Connected to localhost.localdomain. 220 (vsFTPd 2.0.5) 530 Please login with USER and PASS. 530 Please login with USER and PASS. KERBEROS_V4 rejected as an authentication type Name (localhost:root): user01 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp>
6. Versuchen Sie auch, sich mit einer unzulässigen Benutzer-ID anzumelden, z. B. root.
# ftp localhost Connected to localhost.localdomain. 220 (vsFTPd 2.0.5) 530 Please login with USER and PASS. 530 Please login with USER and PASS. KERBEROS_V4 rejected as an authentication type Name (localhost:root): root 530 Permission denied. Login failed. ftp>CentOS / RHEL :So erlauben oder verweigern Sie Benutzern die Anmeldung beim VSFTP-Server