Apa artinya * dan! di bidang kedua dari / etc / shadow?

20

Sejauh yang saya tahu, bidang ke-2 dari / etc / shadow adalah kata sandi terenkripsi dari pengguna. Tetapi beberapa pengguna mis. daemonPengguna ada *di lapangan, di lingkungan saya (Ubuntu 12.04) rootada !di lapangan.

Saya berasumsi !berarti seperti "semua kata sandi tidak valid, Anda tidak dapat masuk dengan pengguna ini." Tetapi saya tidak dapat menemukan dokumen untuk itu.

Apa artinya *dan !dalam file shadow?

pasir besi
sumber

Jawaban:

23

'!' dan '!!' berarti pada dasarnya hal yang sama, tetapi alat yang berbeda menggunakan satu atau yang lain, passwd -lmisalnya, menggunakan sepasang tanda seru. usermod -Ldi sisi lain hanya menggunakan satu.

Biasanya, akun dengan '*' tidak pernah memiliki kata sandi (seperti pada, selalu dinonaktifkan untuk masuk). Ini berbeda dengan akun tanpa entri hash kata sandi sama sekali, dalam hal ini tidak diperlukan kata sandi (dan seringkali tidak akan diminta) yang hampir selalu BURUK !.

Jika itu hash yang tidak valid (yang semuanya '*', '!', Dan '!!') secara efektif mengunci akun dan mencegah login ke akun itu. Seringkali ini diteruskan dengan mengatur shell akun ke sesuatu seperti / bin / false atau / sbin / nologin di file / etc / passwd

Anda akan sering menemukan bahwa jika akun pengguna dikunci setelah sebelumnya memiliki kumpulan kata sandi yang valid, hash kata sandi tersebut memiliki tanda seru yang diawali sebelumnya, ini terjadi ketika akun dibuka kunci, kata sandi dilanjutkan kembali bekerja lagi.

Sirex
sumber
Terima kasih atas penjelasan terperinci Anda. Ini sangat membantu!
ironsand
2
tidak masalah. Satu hal yang saya lupa sebutkan (tetapi tidak menyiratkan) adalah untuk berhati-hati mengunci akun dengan passwd dan mencoba membukanya dengan usermod. Itu hanya akan menghapus '!' Yang pertama, yang tidak akan berfungsi.
Sirex
2
Jawabannya tidak 100% benar. Dari pengalaman saya jika Anda memiliki tanda bintang *di kolom itu, Anda masih dapat masuk dengan baik menggunakan otentikasi kunci publik. Padahal !benar - benar memblokir semua login untuk pengguna itu.
Michael Härtl
2
itu tergantung pada pengaturan "usepam" di file konfigurasi sshd. arlimus.github.io/articles/usepam
Sirex