Wayang: cara membuat dan mengelola pengguna dan grup unix

12

Minggu terakhir ini saya menghabiskan semua upaya untuk mempelajari Wayang. Sekarang saya menderita buffer mental yang meluap dan sedikit kepercayaan diri untuk bisa menjinakkan binatang buas ini. Saya menemukan banyak contoh beranotasi tetapi karena variasi mereka yang tak terhitung jumlahnya, saya gagal membedakan antara gaya wayang dan konvensi yang direkomendasikan (baru-baru ini), dan pendekatan ad hoc "berfungsi untuk saya". Saya tidak tahan karena sepertinya soal level dasar.

Begitu. Menggunakan Wayang untuk mengelola grup dan pengguna, grup utama pengguna sama dengan nama pengguna mereka sendiri, grup lain bisa lanuntuk lan login, wheeluntuk admin, shelluntuk pengguna dengan shell pada node sewenang-wenang, mailuntuk pengguna, daemonsuntuk berbagai daemon. Login admin akan ada di semua node dan untuk membuat keadaan menjadi lebih buruk lan login juga bisa menjadi shell login.

Dari apa yang saya mengerti tidak apa-apa untuk mendefinisikan pengguna beberapa kali jika Anda menggunakan definisi virtual yang diwujudkan di beberapa titik. Kedengarannya luar biasa, jadi bagaimana cara kerjanya dengan beberapa grup untuk pengguna? Say Bob dapat menggunakan node LAN dan node beastie.wan; apakah loginnya thebobkemudian didefinisikan dua kali, di lanusers.pp with groups => ["lan"]dan di shellusers.pp with groups => ["shell"]? Bagaimana jika Bob ingin kata sand dan kata sandinya terpisah dari kata sandinya?

Kode yang saya gunakan saat ini tidak memiliki definisi virtual, pengguna hanya inklusi tunggal berkode keras. Pada satu titik saya menemukan contoh menggunakan virtual dan ini adalah di mana saya terjebak karena saya tidak mengerti bagaimana memperluas kode sehingga Wayang membuat grup utama dan grup yang diperlukan saya tentukan dulu dan kemudian bergabung dengan pengguna dalam kelompok-kelompok tersebut .

Baik. Silakan cluebat saya dengan benar.

drum
sumber

Jawaban:

6

Sekarang saya menderita buffer mental yang meluap dan sedikit kepercayaan diri untuk bisa menjinakkan binatang buas ini.

Pertama: Santai. Saya telah belajar bahwa, ketika Anda baru mengenal sesuatu dengan kurva belajar seperti Wayang, sangat mudah untuk menjadi kewalahan dan tidak dapat menyelesaikan banyak hal.

apakah loginnya thebob kemudian didefinisikan dua kali, di lanusers.pp dengan groups => ["lan"] dan di shellusers.pp dengan groups => ["shell"]?

Nggak. Secara virtual tentukan di satu tempat (mungkin users.pp) dengan groups => ['shell', 'lan',].

Pada node, sadari pengguna yang Anda butuhkan. Misalnya, jika untuk node beaminkita ingin semua shellpengguna:

node beamin {
    Account <| groups == 'shell' |>
}

Bagaimana jika Bob ingin kata sand dan kata sandinya terpisah dari kata sandinya?

Maka Bob mungkin harus mendapatkan 2 akun berbeda dengan nama login berbeda.

Belmin Fernandez
sumber
Terima kasih. Anda benar tentang bagian pertama, saya menjadi kewalahan. Tetapi jawaban kedua Anda membantu, sepertinya membuat pikiran lain bergerak dan sekarang saya telah manifes yang berfungsi dengan baik, dengan pengguna yang hampir pasti yang sedang direalisasikan di lokasi yang tepat. Terima kasih telah membantu saya dengan itu. :)
drumfire
Bukan masalah. Sebelum deklarasi virtual, masalah ini melibatkan solusi yang sangat berbelit-belit. Anggap diri Anda beruntung bahwa Anda datang ke atas boneka Wayang sekarang ;-).
Belmin Fernandez
Saya menggunakan deklarasi virtual, tetapi saya perlu beberapa pengguna berada di grup "sudo" pada beberapa host dan tidak pada yang lain. Ini tidak menyelesaikan skenario itu (dan saya mengalami kesulitan mencari tahu apa yang harus dilakukan: D).
jjmontes
3

Wayang tidak cocok dengan manajemen pengguna / grup yang rumit. Anda akan jauh lebih baik menggunakan sesuatu seperti LDAP - sebanyak yang saya tidak suka, itu akan bekerja jauh lebih baik daripada mencoba untuk mengalahkan Puppet menjadi tunduk.

womble
sumber
Atau FreeIPA. Wayang bagus untuk akun layanan yang perlu ada di sistem, tetapi tidak mengelola pengguna biasa ...
ewwhite
4
Dengan segala hormat (karena Anda adalah anggota SF top): Saya tidak berpikir ini menjawab pertanyaan. T: "Bagaimana cara saya membuat dan mengelola pengguna dan grup unix di Puppet?". A: "LDAP". Saya percaya jawaban seperti ini lebih cocok sebagai komentar. Tentu saja, jika ini telah dibahas sebelumnya dalam meta atau sesuatu, mungkin saya hanya tidak tahu. Tolong jangan membenci saya :-).
Belmin Fernandez
3
@ BeamingMel-Bin: Ada semangat kuat "alat yang tepat untuk pekerjaan itu" di SF. Jika seseorang bertanya "apa cara terbaik untuk memukul sekrup ini dengan palu saya agar bisa masuk?", Kita akan mengatakan "beli obeng" tidak memberikan risalah panjang lebar tentang manfaat teknik palu yang berbeda. Ini karena sebagian besar penanya di sini sangat tidak berpengalaman atau bodoh sehingga mereka tidak menyadari bahwa solusi yang lebih baik ada, atau bahkan solusi yang lebih baik dapat ada (dan karenanya mereka tidak tahu untuk bertanya "apakah ada cara yang lebih baik untuk mengemudi dalam hal ini sekrup? "atau" apa cara terbaik untuk mengemudi di sekrup ini? ").
womble
1
@ Drumfire: Sekali lagi, jika Anda bertanya bagaimana melakukan sesuatu yang bodoh, jawaban yang benar adalah "jangan lakukan itu". Begitulah cara SF bekerja. Kami di sini bukan untuk membantu orang melakukan hal-hal bodoh, kami di sini untuk membuat sysadmin yang lebih efektif.
womble
3
SF, menjadi bagian dari trilogi asli, telah ada jauh lebih lama, dan memiliki "semangat mandiri" yang jauh lebih kuat daripada situs SE lainnya yang lebih homogen. Ada juga make-up dari pengguna untuk dipertimbangkan. Sysadmin bersifat rewel dan keras kepala.
womble