Bagaimana cara membuat akun pengguna melalui skrip bash?

2

Saya perlu membuat akun pengguna baru dengan kata sandi di lebih dari 200 sistem. Apa cara termudah? Apakah mungkin untuk melakukan tugas ini melalui skrip bash atau skrip perl?

karthick87
sumber
Lihatlah perintah addgroupdan adduser.
Paddy Landau

Jawaban:

4

Hasilkan kata sandi dengan perl perl -e 'print crypt("passwd", "passwd");'.

Kemudian cukup gunakan skrip bash untuk menelepon useraddmelalui ssh di setiap server (dengan asumsi Anda sudah menyiapkan kunci ssh untuk login tanpa kata sandi, kalau tidak ini akan menjadi tua, cepat)

pass=$(perl -e 'print crypt("passwd", "passwd");')
for srv in $(cat server.list); do
   ssh $srv useradd -m -p "$pass" username
done

dan periksa halaman manual untuk melihat useraddperintahnyaIkon halaman manual .

OneOfOne
sumber
3

Saya akan menyarankan untuk menggunakan ansible jika Anda ingin membuat akun pengguna di sejumlah besar server. Tentu saja, ini tidak terbatas hanya pada akun pengguna dan sangat mudah untuk mendapatkan pengaturan dan mulai dengan menggunakan yang dimungkinkan. Dokumentasinya cukup bagus!

Yang Anda lakukan adalah menambahkan semua 200 server Anda ke dalam file inventaris dan menjalankan perintah sederhana untuk membuat semua akun. Lihatlah contoh penambahan pengguna ini .

Amar
sumber
Bisakah Anda membagikan contoh di sini, tentang penggunaan yang dimungkinkan dengan ssh private key ..
karthick87
Sebagai bagian dari pengaturan awal Anda yang memungkinkan, Anda akan menambahkan kunci pribadi ssh Anda ke ssh-agent, lihat bagian Memulai . Contoh itu sendiri hanya berupa satu perintah baris seperti yang ditunjukkan pada contoh tautan yang saya berikan di atas. yaitu ansible all -m user -a "name=test1 comment=TestUser1 group=users shell=/bin/bash"
Amar