|
Pengamanan Shadow Password dengan Bash
Scripting + Crontab
1. Persiapan
Login ke level Superuser, lalu buatlah
direktori untuk menyimpan file2 shadow password dan direktori untuk file2
script-nya. Terserah anda mau membuatnya dimana..... yang penting mudah
dimengerti. Saya meletakkan file2 shadownya di
/home/backup/etc dan untuk file script-nya di
/home/backup/script.
Lalu backup /etc/shadow ke direktori yg telah anda buat, untuk berjaga-jaga
......... jikalau anda lupa passwd rootnya ....... tinggal di recovery saja
.........
-
|
[sysadmin@notebook]$
/bin/su root
[root@notebook]# cd /home
[root@notebook]# mkdir -p backup/etc
[root@notebook]# mkdir -p backup/script
[root@notebook]# cp
/etc/shadow /home/backup/etc
[root@notebook]# chmod 600 backup
|
-
Langkah
1. Disini kita membuat
passwd baru untuk root
|
[root@notebook]#
passwd
Changing password for root
Enter the new password (minimum of 5, maximum of 127 characters)
Please use a combination of upper and lower case letters and numbers.
New password:
Re-enter new password:
|
-
Langkah
2. Kemudian kutip
baris yang mengandung kata "root" pada /etc/shadow
-
|
[root@notebook]# grep ^root
/etc/passw >
/home/backup/etc/shadow0
|
Ulangi lagi langkah 1 dengan passwd yang berbeda, dimana pada
langkah 2 anda buat spt ini
:
-
|
[root@notebook]# grep ^root
/etc/passw >
/home/backup/etc/shadow1
|
Ulangi terus dari
langkah1 dan
langkah 2 tadi..... jangan
lupa untuk mengutip passwd root yang telah anda buat berbeda-beda
-
|
[root@notebook]#
grep ^root /etc/passw > /home/backup/etc/shadow2
[root@notebook]# grep ^root /etc/passw
> /home/backup/etc/shadow3
[root@notebook]# grep ^root /etc/passw
> /home/backup/etc/shadow4
[root@notebook]# grep ^root /etc/passw
> /home/backup/etc/shadow5
|
-
Ubah permission filenya, lalu
lihat apakah file yang memiliki kutipan shadow passwd root sudah komplit ada 6
file -
-
|
[root@notebook]# chmod 600
/home/backup/etc/*
[root@notebook]# ls -l /home/backup/etc/
-rw------- 1 root root 53 2004-09-12 21:10 shadow0
-rw------- 1 root root 53 2004-09-12 21:11 shadow1
-rw------- 1 root root 53 2004-09-12 21:11 shadow2
-rw------- 1 root root 53 2004-09-12 21:11 shadow3
-rw------- 1 root root 53 2004-09-12 21:11 shadow4
-rw------- 1 root root 53 2004-09-12 21:11 shadow5
|
2. Pembuatan
Script
Pada bagian ini kita akan membuat script
yang berfungsi untuk mengubah password /etc/shadow dengan file kutipan shadow
passwd root yang anda backup tadi.
Masuk ke direktori /home/backup/script, lalu isi file script tersebut dengan
editing favorit anda....
-
|
[root@notebook]#
cd /home/backup/script/
[root@notebook]# vim ubah0
#!/bin/bash
backupfile="/home/backup/etc/shadow0"
usermod -p"`cut -f2 -d: $backupfile`"
root
|
-
|
[root@notebook]# vim
ubah1
#!/bin/bash
backupfile="/home/backup/etc/shadow1"
usermod -p"`cut -f2 -d: $backupfile`"
root
|
-
Buat 6 file script (ubah0, ubah1
s/d ubah5), perhatikan penomoran script maupun penomoran shadow-nya,
karena itu bagian yang sensitif .......... ^_^
Setelah ke 6 script tersebut selesai dibuat, ubah permission scriptnya
......
-
|
[root@notebook]#
chmod 700 /home/backup/script/*
[root@notebook]# ls -l /home/backup/script/
-rwx------ 1 root root 114 2004-09-12 21:18 ubah0
-rwx------ 1 root root 114 2004-09-12 21:17 ubah1
-rwx------ 1 root root 114 2004-09-12 21:18 ubah2
-rwx------ 1 root root 114 2004-09-12 21:18 ubah3
-rwx------ 1 root root 114 2004-09-12 21:18 ubah4
-rwx------ 1 root root 114 2004-09-12 21:18 ubah5
|
3. Mengatur Waktu Eksekusi
Script Pengubah Shadow Password Pada Crontab
Pada Skenario ini, aku
mengatur script tsb agar dieksekusi setiap 5 menit sekali ..........
^_^
Dimana pada menit ke 1 s/d 29 ... akan
meng-eksekusi script ubah0-5, dan pada menit ke 30
s/d 59 akan mengulangi proses eksekusi dari scrip ubah0 lagi
.
Tambahkan line ini pada
/var/spool/cron/crontabs/root
-
|
00
* * * *
/home/backup/script/./ubah0
05 * * * *
/home/backup/script/./ubah1
10 * * * *
/home/backup/script/./ubah2
15 * * * *
/home/backup/script/./ubah3
20 * * * *
/home/backup/script/./ubah4
25 * * * *
/home/backup/script/./ubah5
30 * * * *
/home/backup/script/./ubah0
35 * * * *
/home/backup/script/./ubah1
40 * * * *
/home/backup/script/./ubah2
45 * * * *
/home/backup/script/./ubah3
50 * * * *
/home/backup/script/./ubah4
55 * * * *
/home/backup/script/./ubah5
|
-
Restart crond anda
-
|
[root@notebook]# killall -HUP
crond
|
-
Lihat penampakan proses
eksekusi cronnya di /var/log/cron, perhatikan baik-baik waktunya .............
^_^
-
|
[root@notebook]# tail -f /var/log/cron
Sep 12 23:00:01 iman crond[3550]: USER root pid
3555 cmd /home/backup/script/./ubah0
Sep 12 23:05:01 iman crond[3550]: USER root pid
3555 cmd /home/backup/script/./ubah1
Sep 12 23:10:01 iman crond[3550]: USER root pid
3555 cmd /home/backup/script/./ubah2
Sep 12 23:15:01 iman crond[3550]: USER root pid
3555 cmd /home/backup/script/./ubah3
Sep 12 23:20:01 iman crond[3550]: USER root pid
3555 cmd /home/backup/script/./ubah4
Sep 12 23:25:01 iman crond[3550]: USER root pid
3555 cmd /home/backup/script/./ubah5
Sep 12 23:30:01 iman crond[3550]: USER root pid
3555 cmd /home/backup/script/./ubah0
.
.
dst ....
|
Ikuti juga perubahan passwd
rootnya
-
|
[root@notebook]#
tail -f /var/log/secure
Sep 12 23:00:01 iman usermod[3519]: change
user `root' password
Sep 12 23:05:01 iman usermod[3519]: change
user `root' password
Sep 12 23:10:01 iman usermod[3519]: change
user `root' password
Sep 12 23:15:01 iman usermod[3519]: change
user `root' password
Sep 12 23:20:01 iman usermod[3524]: change
user `root' password
Sep 12 23:25:01 iman usermod[3530]: change
user `root' password
Sep 12 23:30:02 iman usermod[3533]: change
user `root' password
.
.
dst ....
|
-
Sekarang passwd root anda
telah diubah otomatis menggunakan 5 passwd yang berbeda setiap 5 menit......
silahkan anda tambahkan lagi passwdnya jika merasa hal diatas masih
kurang secure ..... dengan
menambahkan shadow6 s/d seterusnya...
atau juga anda set saja tiap menit passwdnya berubah2 terus.
Jangan sampe lupa passwdnya
............ ^_^
Selamat mencoba, Salam dari
Medan City
5. Referensi
1. Manual page cut
2. Manual page crond
3. Manual page crontab
4. Manual page usermod
|