Secara teknis, kecuali pam
diatur untuk memeriksa shell Anda dengan pam_shells
tak satu pun dari ini benar-benar dapat mencegah login Anda, jika Anda tidak menggunakan shell. Di sistem saya ukurannya bahkan berbeda, jadi saya curiga mereka benar-benar melakukan sesuatu. Jadi apa bedanya? kenapa mereka berdua ada? Mengapa saya menggunakan salah satu dari yang lain?
-rwxr-xr-x 1 root root 21K Feb 4 17:01 /bin/false
-rwxr-xr-x 1 root root 4.7K Mar 2 14:59 /sbin/nologin
Jawaban yang Diterima:
Ketika /sbin/nologin
ditetapkan sebagai shell, jika pengguna dengan shell tersebut masuk, mereka akan mendapatkan pesan sopan yang mengatakan 'Akun ini saat ini tidak tersedia.' Pesan ini dapat diubah dengan file /etc/nologin.txt
.
/bin/false
hanyalah biner yang segera keluar, kembali salah, ketika dipanggil, jadi ketika seseorang yang memiliki false
saat shell masuk, mereka langsung keluar ketika false
keluar. Mengatur shell ke /bin/true
memiliki efek yang sama yaitu tidak mengizinkan seseorang untuk masuk tetapi false
mungkin digunakan sebagai konvensi atas true
karena jauh lebih baik dalam menyampaikan konsep bahwa orang tidak memiliki cangkang.
Melihat nologin
halaman manual, dikatakan dibuat pada 4.4 BSD (awal 1990-an) jadi muncul lama setelah false
telah dibuat. Penggunaan false
sebagai shell mungkin hanya konvensi yang dibawa dari hari-hari awal UNIX.
nologin
adalah opsi yang lebih ramah pengguna, dengan pesan yang dapat disesuaikan yang diberikan kepada pengguna yang mencoba masuk, jadi Anda secara teoritis ingin menggunakannya; tapi keduanya nologin
dan false
akan memiliki hasil akhir yang sama dengan seseorang yang tidak memiliki shell dan tidak dapat melakukan ssh in.