GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa c'è di diverso tra /bin/false e /sbin/nologin come shell dell'utente nologin

A volte, potrebbe essere necessario un account utente con una password per l'autenticazione con un sistema, ma non è necessaria una shell interattiva con quel nome utente. Questo aiuta a impedire che l'account utente venga utilizzato per accedere al sistema con quella password. In questi scenari, possiamo impostare la shell dell'utente su /sbin/nologin o /bin/false . Se l'utente tenta di accedere al sistema, la shell nologin chiude la connessione dell'utente.

Un esempio di tale situazione potrebbe essere un server di posta, in cui è necessario un account utente per archiviare la posta e le password affinché l'utente possa autenticarsi con il client di posta e recuperare la posta; tuttavia, se viene assegnata la shell /sbin/nologin, l'utente non può accedere al sistema utilizzando quell'account.

Poiché entrambi i comandi restituiscono un valore diverso da zero, non c'è molta differenza. Originariamente, /bin/false è stato creato per un comando generale poiché restituisce sempre un valore diverso da zero. Quindi, sembra che sia usata come shell dell'utente nologin prima di creare /sbin/nologin.

D'altra parte, /sbin/nologin è stato creato per la shell dell'utente nologin, ha una funzione per inviare un messaggio in /etc/nologin.txt . L'uso di /sbin/nologin è consigliato per la shell dell'utente nologin, perché è incluso in /etc/shells .

$ man -k nologin
nologin(5)               - disallow logins
nologin(8)               - politely refuse a login
pam_nologin(8)           - No Login PAM module
$ man -k false
...
false(1)                 - Return false value


Linux
  1. Differenza tra /bin/false e /sbin/nologin

  2. Linux – Unire /usr/bin e /usr/sbin in /bin (gnu/linux)?

  3. Perché /bin/sh punta a /bin/dash e non a /bin/bash??

  4. Qual è il significato di /usr/sbin, /usr/local/sbin e /usr/local/bin?

  5. Quando devo usare #!/bin/bash e quando #!/bin/sh?

Installa i binari in /bin, /sbin, /usr/bin e /usr/sbin, interazioni con --prefix e DESTDIR

Qual è la differenza tra #!/usr/bin/env bash e #!/usr/bin/bash?

Quando dovrei usare /dev/shm/ e quando dovrei usare /tmp/?

Qual è la differenza tra /tmp e /run?

I siti web dovrebbero vivere in /var/ o /usr/ in base all'utilizzo consigliato?

#!/bin/sh vs #!/bin/bash per la massima portabilità