Hvorfor har noen systembrukere / usr / bin / false som deres Shell?

Innholdsfortegnelse:

Hvorfor har noen systembrukere / usr / bin / false som deres Shell?
Hvorfor har noen systembrukere / usr / bin / false som deres Shell?

Video: Hvorfor har noen systembrukere / usr / bin / false som deres Shell?

Video: Hvorfor har noen systembrukere / usr / bin / false som deres Shell?
Video: Car Camping in Freezing Cold with Dog - Roof Tent - YouTube 2024, April
Anonim
Når du begynner å grave inn i et Linux-system, kan du finne noen forvirrende eller uventede ting, for eksempel / usr / bin / false, for eksempel. Hvorfor er det der og hva er dens formål? Dagens SuperUser Q & A innlegg har svaret på en nysgjerrig leser spørsmål.
Når du begynner å grave inn i et Linux-system, kan du finne noen forvirrende eller uventede ting, for eksempel / usr / bin / false, for eksempel. Hvorfor er det der og hva er dens formål? Dagens SuperUser Q & A innlegg har svaret på en nysgjerrig leser spørsmål.

Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.

Spørsmålet

SuperUser leser user7326333 vil vite hvorfor noen systembrukere har / usr / bin / false som deres skall:

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

Hvorfor har noen systembrukere / usr / bin / false som deres skall?

Svaret

SuperUser bidragsytere dude, Toby Speight, og bbaassssiiee har svaret for oss. Først opp dude:

This helps to prevent users from logging onto a 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 one hand, system user accounts. On the other hand, this is an 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.

Etterfulgt av svaret fra Toby Speight:

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 do not check /etc/shells, they make use of the fact that /bin/false will immediately return and deny an interactive shell.

Og vårt endelige svar fra bbaassssiiee:

Some users have /usr/bin/false, others have /sbin/nologin, or they may even have /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.

Har du noe å legge til forklaringen? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.

Image Credit: OpenStack Docs (OpenStack Project)

Anbefalt: