How to authenticate user without shell access to ftp server vsftp without adding nologin in /etc/shells on RHEL 7.6.

Solution Verified - Updated -


  • With a user configured with nologin:

    # grep user1 /etc/passwd
  • The user is not authorised to authenticate through ftp:

    $ ftp 
    Connected to (
    220 FTP server - Authorized Use Only!
    Name ( user1
    331 Please specify the password.
    530 Login incorrect.
    Login failed.
  • One solution is to re-add nologin in the list of shells but this will go against the CVE-2018-1113 described in the Root cause section, thus please don't do it if you don't want to be exposed to a risk:

    # grep login /etc/shells


  • Red Hat Enterpise Linux 7.6
  • ftp
  • vsftp

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In