By : Mujie
Berhubung ada pertanyaan menarik dari salah satu member sebuah milis yang saya ikuti, bagaimana jika client kita berjumlah banyak, puluhan atau ratusan. Yang terpenting adalah, kita mempunyai daftar IP Address dan MAC Address client yang terhubung. Dengan menggunakan sedikit baris bash script sederhana, kita dapat membuat otomatisasinya.
Berikut langkah-langkahnya :
1. Buat file bernama rc.iplock didalam directory /etc/rc.d/ dengan isi sebagai berikut :
#!/bin/bash
# Bash script Lock IP Address dan MAC Address
iptables="/sbin/iptables" #path ke iptables
files="/etc/rc.d/list.txt" #path ke list IP Address dan MAC Address
device="eth1" #ethernet devices ke client
lockall="yes" #yes|no ,yes jika mendaftarkan semua IP & MAC Address
#jika tidak, tulis no.
#yes untuk metode pertama, no untuk metode kedua
if [ $lockall = "yes" ]; then
$iptables -I PREROUTING -t nat -i $device -j DROP
cat $files | while read ip_address mac_address; do
$iptables -I PREROUTING -t nat -i $devices -s $ip_address
-m mac --mac-source $mac_address -j ACCEPT
$iptables -I FORWARD -i $device -s ! $ip_address
-m mac --mac-source $mac_address -j DROP
$iptables -I PREROUTING -t nat -s ! $ip_address
-m mac --mac-source $mac_address -j DROP
done
elif [ $lockall = "no" ]; then
$iptables -I PREROUTING -t nat -i $device -j ACCEPT
cat $files | while read ip_address mac_address; do
$iptables -I FORWARD -i $device -s ! $ip_address
-m mac --mac-source $mac_address -j DROP
$iptables -I PREROUTING -t nat -s ! $ip_address
-m mac --mac-source $mac_address -j DROP
done
fi
echo "Locking IP Address and Mac Address..."
#end script
2. Buat file bernama list.txt didalam directory /etc/rc.d/ dengan format penulisan sebagai berikut :
Peringatan!! Jangan tambahkan baris apapun atau kalimat apapun selain format diatas!
Contoh isi file /etc/rc.d/list.txt untuk 3 client:
192.168.1.5 00:89:CD:64:01:EF
192.168.1.20 00:90:DD:14:11:CF
192.168.1.14 00:40:EE:21:26:GE
3. Set file rc.iplock agar dapat di eksekusi :
chmod +x /etc/rc.d/rc.iplock
4. Tambahkan didalam file /etc/rc.d/rc.local agar dapat di eksekusi pada saat start up :
/etc/rc.d/rc.iplock
5. Jalankan :
/etc/rc.d/rc.iplock
6. Selesai! Selamat Anda dapat bintang =P
sumber : http://www.o-om.com/2007/07/otomatisasi-firewalling-ip-dan-mac.html
Berhubung ada pertanyaan menarik dari salah satu member sebuah milis yang saya ikuti, bagaimana jika client kita berjumlah banyak, puluhan atau ratusan. Yang terpenting adalah, kita mempunyai daftar IP Address dan MAC Address client yang terhubung. Dengan menggunakan sedikit baris bash script sederhana, kita dapat membuat otomatisasinya.
Berikut langkah-langkahnya :
1. Buat file bernama rc.iplock didalam directory /etc/rc.d/ dengan isi sebagai berikut :
#!/bin/bash
# Bash script Lock IP Address dan MAC Address
iptables="/sbin/iptables" #path ke iptables
files="/etc/rc.d/list.txt" #path ke list IP Address dan MAC Address
device="eth1" #ethernet devices ke client
lockall="yes" #yes|no ,yes jika mendaftarkan semua IP & MAC Address
#jika tidak, tulis no.
#yes untuk metode pertama, no untuk metode kedua
if [ $lockall = "yes" ]; then
$iptables -I PREROUTING -t nat -i $device -j DROP
cat $files | while read ip_address mac_address; do
$iptables -I PREROUTING -t nat -i $devices -s $ip_address
-m mac --mac-source $mac_address -j ACCEPT
$iptables -I FORWARD -i $device -s ! $ip_address
-m mac --mac-source $mac_address -j DROP
$iptables -I PREROUTING -t nat -s ! $ip_address
-m mac --mac-source $mac_address -j DROP
done
elif [ $lockall = "no" ]; then
$iptables -I PREROUTING -t nat -i $device -j ACCEPT
cat $files | while read ip_address mac_address; do
$iptables -I FORWARD -i $device -s ! $ip_address
-m mac --mac-source $mac_address -j DROP
$iptables -I PREROUTING -t nat -s ! $ip_address
-m mac --mac-source $mac_address -j DROP
done
fi
echo "Locking IP Address and Mac Address..."
#end script
2. Buat file bernama list.txt didalam directory /etc/rc.d/ dengan format penulisan sebagai berikut :
Peringatan!! Jangan tambahkan baris apapun atau kalimat apapun selain format diatas!
Contoh isi file /etc/rc.d/list.txt untuk 3 client:
192.168.1.5 00:89:CD:64:01:EF
192.168.1.20 00:90:DD:14:11:CF
192.168.1.14 00:40:EE:21:26:GE
3. Set file rc.iplock agar dapat di eksekusi :
chmod +x /etc/rc.d/rc.iplock
4. Tambahkan didalam file /etc/rc.d/rc.local agar dapat di eksekusi pada saat start up :
/etc/rc.d/rc.iplock
5. Jalankan :
/etc/rc.d/rc.iplock
6. Selesai! Selamat Anda dapat bintang =P
sumber : http://www.o-om.com/2007/07/otomatisasi-firewalling-ip-dan-mac.html
No comments:
Post a Comment
Terima kasih atas komentarnya