Senin, Juni 09, 2008

Create User Linux on The Fly

Assalamu'alikum Wr. Wb
Sekalian karena ada permintaan mas Niza Tito untuk script buat user Linux di Lab sekalian saya tulis disini. Dahulu kala waktu masih ngajar praktikum di amikom tahun 2000 buat user di lab sering make script. User dibuat otomatis dengan menggunakan script, kemudian di akprind juga bikin shell untuk mahasiswa menggunakan script yang mirip2 juga. Berikut langkah-langkah untuk membuat user secara otomagic di Linux
1.Buat user "newuser" dan password "newuser", nama user dan password terserah sebenarnya
2.Buat hak akses newuser sebagai root dan tidak boleh login, hanya menjalankan scrip, ini bisa dilakukan dengan mengedit file /etc/passwd seperti berikut,
newuser:x:0:0:,,,:/home/newuser:/home/newuser/newuser.sh

User newuser di atas akan menjalankan script newuser.sh jika login
3.Buat script newuser.sh


#!/bin/sh
# Dibuat oleh wa2nlinux
# wa2n@nrar.net
echo " .__ .__ .__ _____ .__ __ "
echo ".___ _________________________ _________.__ .__ .__ "
echo "| |/ _____/\__ ___/ _ \ / _____/| |__ ____ | | | | "
echo "| |\_____ \ | | / /_\ \ \_____ \ | | \_/ __ \| | | | "
echo "| |/ \ | |/ | \ / \| Y \ ___/| |_| |__"
echo "|___/_______ / |____|\____|__ / /_______ /|___| /\___ >____/____/"
echo " \/ \/ \/ \/ \/ "
echo " _________ "
echo " / _____/ ______________ __ ___________ "
echo " \_____ \_/ __ \_ __ \ \/ // __ \_ __ \."
echo " / \ ___/| | \/\ /\ ___/| | \/"
echo " /_______ /\___ >__| \_/ \___ >__| "
echo " \/ \/ \/ "
echo " Powered by GNU/Debian Linux ..........................................."
echo " Selamat Datang di shell.akprind.ac.id.................................."
echo " Sistem ini akan membuat login automagic di server......................"
echo " Silahkan di baca baik-baik perintahnya"
echo " lengkapi Data anda"
echo " Silahan masukan nama login dengan no mahasiswa"
echo " Misalkan 0000000 (jangan pake titik)"
read nama
status=0
if grep -q -w $nama nim
then
echo "Ok anda mahasiswa akprind ato paling ngak tau nim nya :D "
status=1
else
echo "Maap anda bukan mahasiswa akprind kayaknya"
echo "Silahkan Hubungi administrator.............."
read x
exit
fi
# read x
# exit
if [[ $status = 1 ]]
then
/usr/sbin/adduser -force-badname --conf /home/newuser/adduser.conf --ingroup mahasiswa $nama
echo "Terimakasih $nama anda sudah terdaftar, silahkan login kembali menggunakan login anda"
read x
exit
fi

4. Selesai.

Secara sederhana script di atas "hanya" menjalakan program adduser dengan konfigurasi tertentu seperti homedir dll, yang diletakan di file adduser.conf. Password akan dibuat oleh user sendiri, pada script di atas username akan dibatasi hanya dengan format mahasiswa akprind.

Jika no mahasiswa memungkinkan digenerate maka dapat juga digunakan script berikut,


#!/bin/bash
nim=1
while [ $x -le 2 ]
do
echo "02050$nim:x:100$x:1000:Mahasiswa,,,:/home/02050$x:/bin/bash" >> /etc/passwd
echo "02050$nim:$1$p127$LoMMJDBmgYgOtGcgW6gWq/:13856:0:99999:7:::" >> /etc/shadow
mkdir /home/0205$nim
chown -R 02050$nim.mahasiswa /home/0205$x
x=$(( $x + 1 ))
done


Ok .. semoga bermanfaat


Wass. Wr Wb

Tidak ada komentar: