Why do some system users have /usr/bin/false as their shell?

64

9

Why do some system users have /usr/bin/false as their shell and what does that mean?

user7326333

Posted 2017-02-27T15:37:24.567

Reputation: 683

3

You may also be interested in What is the difference between /sbin/nologin and /bin/false?

– Michael Hampton – 2017-02-28T23:41:25.853

Answers

75

This helps to prevent users from logging on system.

Sometimes you need a user account for a specific task. Nevertheless, no one should be able to interact with this account on the computer. These are on the one hand system user accounts, on the other hand this is account, for which FTP or POP3 access is possible, but just no direct shell login.

If you look more closely at the /etc/passwd file, you will find the /bin/false command as a login shell for many system accounts. Actually, false is not a shell, but a command that does nothing and then also ends with a status code that signals an error. The result is simple. The user logs in and immediately sees the login prompt again.

duDE

Posted 2017-02-27T15:37:24.567

Reputation: 14 097

5note that is only convention; i could install my own shell as /random/path/foo-shell and set it as my default in /etc/passwd. there is no guarantee. – quixotic – 2017-02-27T16:01:07.727

17

These users exist to be the owner of specific files or processes, and are not intended to be login accounts.

If the value of the "shell" field is not listed in /etc/shells then programs such as FTP daemons do not allow access.

Additionally, for programs that don't check /etc/shells, we make use of the fact that /bin/false will immediately return, so denying an interactive shell.

Toby Speight

Posted 2017-02-27T15:37:24.567

Reputation: 4 090

8

Some users have /usr/bin/false, others have /sbin/nologin or even /usr/bin/passwd.

They can either be system users that are needed to isolate program permissions, or human users of programs that use the password files for authentication.

bbaassssiiee

Posted 2017-02-27T15:37:24.567

Reputation: 1 225

2/usr/bin/passwd is used e.g. for mail-only accounts. Users can use ssh to change their password, but nothing else. – Simon Richter – 2017-03-01T12:49:52.867