Bridge Firewall Disini akan diberikan contoh konfigurasi bridge-firewall, suatu firewall transparan yang cukup handal untuk memfilter paket yang tidak diinginkan dan mengijinkan paket. Berikut adalah konfigurasi sederhana-nya: ---------- --- | | -- -- --------------- | Linux | -- -- | 202.202.202.x |-----------eth1-| Bridge |-eth0------ INTERNET -- --------------- | Firewall | -- -- | | -- -- ---------- --- Rule yang diinginkan adalah: - PC dengan IP 202.202.202.x dapat mengaksses internet tanpa filtering - Internet hanya dapat mengakses IP 202.2002.202.x pada port 80 (http) saja - Internet tidak bisa traceroute ke IP 2022.202.202.x Ok kita mulai saja, siapkan distro linux, install pada pc yang mempunyai dua NIc yang akan kita buat sebagai bridge firewall. setelah terinstall distor pilihan anda (disini penulis menggunakan distro CenTos 4),lakukan langkah berikut. ifdown eth0 -> down interface eth0 ifdown eth1 -> down interface eth1 ifconfig eth0 0.0.0.0 -> buat ip kosong di eth0 ifconfig eth1 0.0.0.0 -> buat ip kosong di eth1 brctl addbr java_ux -> nambahin bridge dengan nama bridge java_ux brctl addif java_ux eth0 -> nambahin interface eth0 ke bridge java_ux brctl addif java_ux eth1 -> nambahin interface eth1 ke bridge java_ux ifconfig java_ux up -> ngaktifin bridge java_ux Bridge sudah terpasang di linux anda, sekarang kita buat rule firewall pada bridge: # Ngapusin semua rule iptables iptables -F iptables -t nat -F iptables -t mangle -F iptables --delete-chain iptables -t nat --delete-chain # Nge'delete' semua chain user iptables -X # Membuat special chain KEEP_STATE iptables -N KEEP_STATE iptables -F KEEP_STATE # Nge'drop' state yang bad iptables -A KEEP_STATE -m state --state INVALID -j DROP iptables -A KEEP_STATE -m state --state RELATED,ESTABLISHED -j ACCEPT # Menolak paket yang bad (opsional) #iptables -A FORWARD -p tcp --tcp-flags ALL FIN,URG,PSH -m limit --limit 5/minute -j LOG --log-level notice --log-prefix "NMAP-XMAS: " #iptables -A FORWARD -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP #iptables -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -m limit --limit 5/minute -j LOG --log-level notice --log-prefix "SYN/FIN: " #iptables -A FORWARD -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP #iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -m limit --limit 5/minute -j LOG --log-level notice --log-prefix "SYN/RST: " #iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j DROP # Nge'drop' RST/ACKs untuk ngebatesin deteksi OS detection melalui pinging (opsional) #iptables -A FORWARD -p tcp --tcp-flags RST RST,ACK -m limit --limit 5/minute -j LOG --log-level notice --log-prefix "RST/ACK: " #iptables -A FORWARD -p tcp --tcp-flags RST RST,ACK -j DROP # ngelewatin semua boxes untuk chain keep_state iptables -A FORWARD -j KEEP_STATE # Kalau mau Nge'reject' Outgoing traceroute (opsional) #iptables -A FORWARD -p udp -s 202.202.202.x/255.255.255.255 --sport 32769:65535 --dport 33434:33523 -j REJECT # Nge'reject' Incoming traceroute iptables -A FORWARD -p udp -s 202.202.202.x/255.255.255.255 --dport 32769:65535 --sport 33434:33523 -j REJECT # Ngasih ijin Internet agar dapat mengakses port 80 iptables -A FORWARD -p tcp -d 202.202.202.x/255.255.255.255 --dport 80 -j ACCEPT # Ngasih ijin outgoing trafik iptables -A FORWARD -s 202.202.202.x/255.255.255.255 -j ACCEPT # Nge'drop' semua rule yang gak diijinkan pada rule diatas iptables -A FORWARD -j DROP Demikian langkah2 sederhananya, kalau mau dibuat otomatis agar saat bridge firewall restart, rule tersebut diatas dibuat script .sh , dan file scriptnya di simpan di direktori /etc/rc.d/rc.local Adapun untuk men'disable' bridge, kita lakukan command kebalikan dari script bridge, yaitu: ifconfig java_ux down brctl delif java_ux eth1 brctl delif java_ux eth0 brctl delbr java_ux ifdown eth1 ifdown eth0 Untuk Menghapus semua rule firewall iptables dapat dilakukan dengan command: # Ngapusin semua rule iptables iptables -F iptables -t nat -F iptables -t mangle -F iptables --delete-chain iptables -t nat --delete-chain # Nge'delete' semua chain user iptables -X oh ya, jangan lupa jalankan : echo "1" > /proc/sys/net/ipv4/ip_forward Demikian, semoga bermanfaat. Thanks to my wife, my son and my daughter You are all part of my life -- java_ux ---