Mengapa / etc / passwd terbuka untuk umum untuk dibaca?

12

Apakah ada alasan bahwa / etc / passwd harus dapat dibaca di seluruh dunia? Ini tidak seperti hash kata sandi yang tidak boleh diekspos, saya hanya ingin tahu mengapa.

bunga aster
sumber
1
Saya pikir ketika shell pilihan Anda tahu untuk berekspansi ~userke direktori home pengguna, itu benar-benar mencari yang dalam /etc/passwd, jadi itu menyenangkan untuk dibaca daripada memberikan semua shell hak yang ditinggikan.
Ulrich Schwarz
Memperluas "~" adalah fungsi dari variabel $ HOME - setel $ HOME ke / var / tmp dan kemudian jika Anda melakukan "cd ~" - itu akan berubah menjadi / var / tmp.
Saurabh Hirani

Jawaban:

14

/etc/passwdkadang-kadang disebut basis data pengguna. Itu seharusnya memberi kita petunjuk mengapa itu perlu dibaca oleh semua orang. Utilitas apa pun yang memeriksa metadata file harus dapat membaca /etc/passwd(dan /etc/group) agar dapat menyelesaikan ID numerik yang digunakan oleh kernel dan subsistemnya untuk nama ramah manusia yang kita andalkan. Alat-alat yang perlu menemukan direktori rumah Anda (agen pengiriman surat, dll) melihat bahwa informasi masuk /etc/passwd, dan inetminiservers suka fingerdmencari detail Anda di /etc/passwd.

Seperti yang telah ditunjukkan di tempat lain, tidak ada data yang sangat sensitif dalam file, karena sistem modern menempatkan hash kata sandi dalam file shadow password, yang hanya dapat dibaca oleh root.

D_Bye
sumber
6
Lalu, apakah karena alasan historis disebut passwdketika sebenarnya nama ini tidak mencerminkan apa yang ada dalam file?
Emanuel Berg
8
Ya saya pikir begitu. Dalam versi UNIX yang sangat awal, kata sandi memang disimpan di /etc/passwd(tidak terenkripsi pada awalnya!). Pada saat hash kata sandi dipindahkan ke file bayangan, banyak utilitas yang sudah ada yang mengandalkan potongan informasi lainnya /etc/passwd, sehingga namanya macet.
D_Bye
7

/etc/passwdtidak mengandung hash kata sandi (Jadi ini bukan masalah besar). /etc/shadowberisi hash kata sandi dan hanya dapat dibaca oleh root (& grup bayangan)

Manula Waidyanatha
sumber
1
Pada beberapa pengaturan kata sandi bahkan tidak ada dalam file itu karena mereka dalam LDAP atau backend aman lainnya!
Tim