Bagaimana cara mengotomatiskan proses kinit untuk mendapatkan TGT untuk Kerberos?


10

Saat ini saya sedang menulis modul boneka untuk mengotomatiskan proses bergabung dengan server RHEL ke domain AD, dengan dukungan untuk Kerberos.

Saat ini, saya memiliki masalah dengan secara otomatis mendapatkan dan melakukan cache tiket melalui pemberian Tiket Kerberos kinit. Jika ini dilakukan secara manual, saya akan melakukan ini:

kinit aduser@REALM.COM

Ini meminta kata sandi pengguna AD, karenanya ada masalah dengan mengotomatiskan ini.

Bagaimana saya bisa mengotomatisasi ini? Saya telah menemukan beberapa tulisan yang disebutkan digunakan kadminuntuk membuat database dengan kata sandi pengguna AD di dalamnya, tetapi saya tidak beruntung.

Jawaban:


18

Bodoh saya, Anda cukup menggunakan perintah berikut:

echo "password" | kinit aduser@REALM

1
echo -n "$PASS" | kinit "$USER"jangan tampilkan trailing newline
Dejan

14
Atau cetak poster dengan kata sandi Anda dan hang out! Menyimpan kata sandi Anda dalam teks biasa adalah tidak boleh
Havnar

17

Meskipun Anda bisa memasukkan kode sandi ke dalam otomatisasi Anda, cara Kerberos yang lebih tepat untuk melakukan ini adalah dengan membuat keytab untuk kepala sekolah dan kemudian menggunakannya untuk otentikasi. kinitmendukung otentikasi dari keytab menggunakan -k -t <keytab-path>opsi.

Keuntungan utama keytab adalah bahwa ia mengisolasi kredensial dalam file terpisah dan dapat digunakan langsung oleh berbagai perangkat lunak Kerberos (jadi Anda tidak perlu menambahkan kode untuk membaca kata sandi dari file terpisah). Itu juga dapat dibuat dengan perintah standar (dengan AD KDC, gunakan ktpass). Ada beberapa keuntungan lebih jika Anda memiliki KDC Linux, seperti kunci acak yang disimpan di tab kunci daripada menggunakan kata sandi yang lebih lemah.


1
Keytab jelas merupakan jalan yang harus ditempuh. Jika Anda menghasilkan ini dalam kadmin, pastikan untuk menggunakan -norandkeybendera di ktadd jika Anda tidak ingin membatalkan kata sandi yang ada.
Dennis Jaheruddin

1

Menurut halaman manual yang dapat Anda gunakan:

kinit --password-file="~/my.secret" aduser@REALM.COM

Jadi Anda mungkin memberikan kata sandi Anda melalui file.


apakah itu berfungsi di windows?
Indranil Gayen
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.