User untuk keperluan khusus tertentu dengan level root memanfaatkan sudoers pada Linux. Ditulis oleh Djeyraff
source: devrant.com
Pada Lab kali ini kita akan membuat user untuk keperluan khusus tertentu dengan level root memanfaatkan sudoers pada Linux. Mungkin kita terkadang berhadapan dengan kondisi dimana perlu sebuah user baru yang memiliki akses tinggi (selevel root) tetapi hanya untuk menjalankan command tertentu saja, karena fungsi user tersebut memang dikhususkan untuk itu.
Baik langsung saja lab kali ini kita akan buat user “resetuser” pada linux RHEL 7 (namun dapat berjalan di semua jenis linux) yang memiliki fungsi untuk me-reset password dari user root. Pada lab kali ini kunci utamanya ialah konfigurasi di /etc/sudoers, baik kita mulai saja.
2. Buatlah user baru dan buatkan password untuk user tersebut dengan perintah berikut.
#adduser resetuser
#passwd resetuser
3. Cek apakah user telah berhasil dibuat.
#cat /etc/passwd
4. Karena kita akan membuat user “resetuser” dengan kemampuan reset password maka kita perlu mengetahui dimana lokasi passwd (command reset password Linux) berada di OS Linux kita, dengan perintah.
#which passwd
Pada OS RHEL 7 saya kali ini, lokasi passwd berada di /bin/passwd lokasi ini akan kita gunakan saat konfigurasi file sudoers, jadi harap diingat.
5. Sekarang masuk ke konfigurasi utama yang perlu dilakukan yaitu edit file sudoers dengan perintah.
#nano /etc/sudoers
tambahkan perintah seperti di atas
resetuser ALL=(root) /bin/passwd root
Penjelasan:
Jika ingin membatasi agar “resetuser” hanya dapat melakukan reset jika diakses dari IP Address 192.168.7.1 maka command ALL dapat diganti jadi IP tersebut saja, seperti berikut.
resetuser 192.168.7.1=(root) /bin/passwd root
Baik saya rasa sudah jelas jika fungsi sudoers ini sangat banyak fungsinya, bukan hanya untuk command passwd saja tapi bisa untuk kreasi user apa, dari mana, sebagai apa, dan boleh menjalankan apa saja. Kalian bisa bebas merancang sudoers kalian sesuai kebutuhan kalian, namun pastikan di konfigurasi tetap seaman mungkin.
Test hasil konfigurasi resetuser
#su - resetuser
2. Kita coba untuk menjalankan fungsi utamanya yaitu reset user root, dengan perintah.
$sudo -u root /bin/passwd root
atau
$sudo -u root passwd root
sudo -u root dibutuhkan karena kita memakai akses root yang diberikan ke user “resetuser”.
Terlihat user “resetuser “dapat melakukan reset password dengan sempurna tanpa kendala terhadap user root.
3. Selanjutnya kita akan lakukan verifikasi apakah benar user tersebut tidak dapat melakukan command lain selain yang diberikan di file sudoers tadi.
Semua command selain diberikan terlihat tidak diizinkan untuk dijalankan, mulai dari reset user selain root hingga edit file sudoers.
Sampai sini lab ini berhasil tanpa kendala, sedikit tips fungsi pembatasan source akses (sumber akses) sebaiknya dikonfigurasi agar ditujukan khusus ke IP Address yang memang diizinkan untuk menjalankan fungsi user tersebut, agar keamanan proses reset password hanya diberikan khusus terhadap satu sumber akses umumnya hal ini berguna jika server diakses lewat SSH dan remote akses lainnya.