GNU/Linux >> Znalost Linux >  >> Linux

Chyba „530:oprávnění odepřeno“, když se uživatel přihlásí k serveru vsftpd přes ftp

Problém

Server Vsftp je nově nainstalován a byl uveden do provozu, ale někteří uživatelé k němu nemají přístup, což způsobuje níže uvedenou chybu.

# 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.

Řešení

Příčinou je, že pokud parametr userlist_enable v souboru /etc/vsftpd/vsftpd.conf je ANO a parametr userlist_deny výchozí hodnota je také ANO , pak uživatelské jméno v souboru /etc/vsftpd/user_list dostane ‘530 Oprávnění odepřeno ‘ chyba a ani nepožaduje heslo.

Když je parametr userlist_enable povolen, vsftpd načte uživatelská jména do souboru /etc/vsftpd/userlist_file. Pokud se uživatel pokusí přihlásit pomocí jména v tomto souboru, bude mu odepřeno, než bude požádán o heslo. To může být užitečné při zabránění přenosu hesel s čistým textem.

Parametr userlist_deny bude zkoumán, pokud je aktivován userlist_enable. Pokud toto nastavení nastavíte na NE, uživatelé se budou moci přihlásit, pokud jsou uvedeni v souboru /etc/vsftpd/userlist_file.

Poznámka :Z bezpečnostních důvodů by měl být userlist_enable nastaven na „YES“, protože tento problém lze také vyřešit nastavením „userlist_enable=NO“ v /etc/vsftpd/vsftpd.conf

Tento problém tedy můžeme vyřešit nastavením userlist_deny na NE při aktivaci userlist_enable. Poté vložte povolená uživatelská jména do souboru /etc/vsftpd/user_list a nepovolená uživatelská jména vložte do souboru /etc/vsftpd/ftpusers.

Vysvětlení můžete vidět v manuálu 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

Tyto komentáře můžete také vidět v souboru /etc/vsftpd/user_list .

# 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.

Povolení přihlášení místnímu uživateli serveru VSFTP

1. Upravte /etc/vsftpd/vsftpd.conf a nastavte userlist_enable na ANO a userlist_deny na NE .

# vi /etc/vsftpd/vsftpd.conf
userlist_enable=YES
userlist_deny=NO

2. Upravte /etc/vsftpd/user_list , vložte uživatele (user01), kterému je povoleno se přihlásit do tohoto souboru

# cat  /etc/vsftpd/user_list
user01

3. Všechny uživatele, kteří nemají povoleno používat ftp, vložte do /etc/vsftpd/ftpusers .

# 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. Restartujte službu vsftpd.

# service vsftpd restart

5. Zkuste ftp znovu s uživatelem – 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. Zkuste také Přihlášení pomocí nepovoleného uživatelského jména, například 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 :Jak povolit nebo zakázat uživatelům přihlášení k serveru VSFTP


Linux
  1. Jak zakázat přihlášení uživatele root přes SSH

  2. Jak nainstalovat VSFTPD na cloudový server Ubuntu

  3. Jak nainstalovat VSFTPD na cloudový server Debian

  1. Jak nainstalovat VSFTPD na cloudový server CentOS

  2. Uživatel nemůže upravit crontab, chyba:„/tmp/crontab.Lm34gsJV:Permission denied“

  3. povolení docker.sock odepřeno

  1. oprávnění odepřeno pro soubor autorizovaný_klíč

  2. oprávnění k zápisu odepřeno přes filezilla sftp do /var/www/html

  3. Jak správně nastavit oprávnění pro složku NFS? Povolení odepřeno na konci montáže.