If-Koubou

De ce unii utilizatori de sistem au / usr / bin / false ca shell-ul lor?

De ce unii utilizatori de sistem au / usr / bin / false ca shell-ul lor? (Cum să)

Odată ce ați început săpelați într-un sistem Linux, puteți găsi unele lucruri confuze sau neașteptate, cum ar fi / usr / bin / false, de exemplu. De ce este acolo și care este scopul lui? Postul de astăzi SuperUser Q & A are răspunsul la întrebările curioase ale cititorului.

Sesiunea de întrebări și răspunsuri din ziua de astăzi vine de la amabilitatea SuperUser - o subdiviziune a Stack Exchange, o grupare bazată pe comunitate a site-urilor Q & A.

Intrebarea

Cititorul superUser user7326333 dorește să știe de ce unii utilizatori de sistem au / usr / bin / false ca shell-ul lor:

De ce unii utilizatori de sistem au / usr / bin / false ca shell-ul lor? Ce inseamna asta?

De ce unii utilizatori de sistem au / usr / bin / false ca shell-ul lor?

Răspunsul

Utilizatorii superUser duDE, Toby Speight și bbaassssiiee au răspunsul pentru noi. În primul rând, duDE:

Acest lucru ajută la prevenirea conectării utilizatorilor la un sistem. Uneori aveți nevoie de un cont de utilizator pentru o anumită sarcină. Cu toate acestea, nimeni nu ar trebui să poată interacționa cu acest cont pe computer. Acestea sunt, pe de o parte, conturile de utilizator ale sistemului. Pe de altă parte, acesta este un cont pentru care este posibil accesul FTP sau POP3, dar nu există niciun login direct pentru shell.

Dacă priviți mai atent la fișierul / etc / passwd, veți găsi comanda / bin / false ca o coajă de conectare pentru multe conturi de sistem. De fapt, falsul nu este o coajă, ci o comandă care nu face nimic și apoi se termină și cu un cod de stare care semnalează o eroare. Rezultatul este simplu. Utilizatorul se conectează și vede din nou promptul de autentificare din nou.

Urmat de răspunsul lui Toby Speight:

Acești utilizatori există ca proprietar al unor fișiere sau procese specifice și nu sunt destinate să fie conturi de conectare. Dacă valoarea câmpului "shell" nu este listată în / etc / shells, atunci programele precum daemonii FTP nu permit accesul. În plus, pentru programele care nu verifică / etc / shell-uri, ei folosesc faptul că / bin / false va reveni imediat și va refuza o coajă interactivă.

Și răspunsul nostru final de la bbaassssiiee:

Unii utilizatori au / usr / bin / false, alții au / sbin / nologin, sau chiar au / usr / bin / passwd. Aceștia pot fi fie utilizatori de sistem care sunt necesari pentru a izola permisiunile de program, fie utilizatorii umani ai programelor care utilizează fișierele de parolă pentru autentificare.

Aveți ceva de adăugat la explicație? Sunați în comentarii. Doriți să citiți mai multe răspunsuri de la alți utilizatori de tehnologie Stack Exchange? Check out discuția completă aici.

Credit de imagine: OpenStack Docs (Proiectul OpenStack)