Atur kata sandi utama dari terminal

4

Saya mencoba mengatur kata sandi utama dari terminal (menggunakan skrip shell). Saya melihat fungsi passwd dan fungsi master.passwd, namun saya tidak melihat dokumentasi pada keduanya untuk mengatur kata sandi master (AFAIK, ini hanya mengatur kata sandi pengguna).

Saya menarik informasi saya dari sumber-sumber ini:

http://support.apple.com/kb/ph7032 Apa yang dilakukan perintah ini: sudo dscl. passwd / Pengguna / administrator thePassword https://developer.apple.com/library/mac/documentation/darwin/reference/manpages/man5/master.passwd.5.html

Pertanyaanku adalah:

Bisakah Anda menggunakan perintah passwd atau master.passwd untuk mengatur kata sandi master? Jika demikian, dapatkah Anda memberikan contoh bagaimana cara melakukannya?

Nathan Lafferty
sumber

Jawaban:

6

Pertama, beberapa hal yang perlu diperhatikan:

Pada Mac file /etc/passwddan /etc/master.passwdhanya dikonsultasikan ketika Mac di-boot ke mode pengguna tunggal.

Saya tidak yakin apa yang Anda maksud dengan "atur kata sandi utama" untuk Mac. Apakah maksud Anda mengatur kata sandi untuk akun 'root'?

Biasanya Anda menggunakan passwdperintah untuk mengubah kata sandi dari baris perintah (tidak ada master.passwdperintah) tetapi Anda tidak dapat menggunakannya dari skrip karena memerlukan input.

Untuk mengubah kata sandi dalam skrip, Anda perlu menggunakan dsclperintah.

Berikut ini sebuah contoh:

dscl . -passwd /Users/tonyw newpass

Perhatikan bahwa di atas harus dijalankan sebagai root, yang berarti skrip Anda harus dijalankan oleh root. Kalau tidak, Anda harus menambahkan otentikasi ke perintah dscl sebagai berikut:

dscl . -u Admin -P adminpassword -passwd /Users/tonyw newpass

Pengguna Adminharus memiliki hak administrator untuk Mac.

(Semua ini sangat tidak aman karena Anda memiliki kata sandi dalam teks biasa dalam sebuah skrip.)

Tentu saja untuk mengatur kata sandi untuk 'root' cukup ubah tonywke rootdi atas.

Lihat baik-baik dscl(1)untuk memahami opsi di atas.

Tony Williams
sumber
Ditulis dengan baik dan menjernihkan beberapa kesalahpahaman saya. Saya sudah memiliki beberapa metode di tambang untuk mengaburkan kata sandi dari skrip shell (saya akan menyampaikannya sebagai argumen, jadi itu tidak akan pernah menjadi teks biasa) Saya akan mengambil saran Anda dan meninjau skrip dscl dan melaporkan kembali dengan temuan saya :)
Nathan Lafferty
Oke, sekarang saya sudah punya waktu untuk melakukan riset lebih lanjut dan menganalisis pertanyaan Anda dengan benar: "Saya tidak yakin apa yang Anda maksud dengan" mengatur kata sandi utama "untuk Mac. Maksud Anda mengatur kata sandi untuk akun ' akar'?" Kata sandi master diatur untuk filevault. Ia menambahkan lapisan perlindungan lain jika Anda berhasil melupakan satu kata sandi (kemudian ada administrasi yang dapat memulihkan file Anda). Inilah yang saya bicarakan dan saya pikir saya tidak bisa menggunakan perintah dscl untuk mencapai ini.
Nathan Lafferty
Nathan, Anda perhatikan mereka menyebutnya "kunci pemulihan" bukan kata sandi utama dalam semua dokumen mereka.
Tony Williams
1
dscl . -passwd /Users/tonyw newpass- Bekerja sangat baik pada OS X 10.9.5.
funroll
1

OK, untuk FileVault Anda perlu menggunakan fdesetupperintah. Siapkan Mac uji, lihat halaman manual yang panjang dan coba-coba. Dari halaman manual sepertinya Anda dapat mengubah kata sandi pemulihan FileVault menggunakan changerecoveryopsi.

Maaf, tapi saya tidak siap untuk melakukan pengujian untuk memberi Anda perintah yang tepat karena melakukan kesalahan dapat merusak Mac saya. Ada banyak contoh di halaman manual.

BTW - Saya menemukannya dengan pergi apropos FileVaultdi baris perintah. Selalu langkah pertama yang baik.

Tony Williams
sumber
Setelah berbicara dengan pimpinan proyek, sepertinya dia salah tentang apa kata sandi utama itu. Karena kita tidak akan menggunakan filevault (yang hanya digunakan), kita telah memutuskan untuk tidak khawatir tentang hal ini. Jawaban Anda tampaknya benar ... tetapi karena saya tidak mengujinya, saya tidak tahu apakah saya harus menandainya sebagai jawaban atau membiarkannya saja.
Nathan Lafferty
1

Mulai ulang Mac Anda dan tahan Command+ s, biarkan memuat, lalu ketik:

/sbin/fsck -y
/sbin/mount -UAW

Ini akan memunculkan direktori pengguna, lalu ketik:

ls /Users/

Catatan, mari kita asumsikan nama akun adalah xyz, ketik:

passwd xyz

Perhatikan bahwa baris perintah harus kosong. Ketikkan kata sandi baru dan tekan enter. Perhatikan bahwa baris perintah harus kosong lagi.

Ketik ulang kata sandi baru dan tekan enter. Akhirnya ketik:

reboot
Mox Sisu
sumber