Dalam contoh berikut kita menginstall firewall pada sebuah server
yang terkonek internet dan di sharing ke banyak komputer, dimana pihak
local bisa mengakses internet secara bebas namun jika ada sesuatu dari
internet akan di tolak secara mentah-mentah.
Sebelum kita mensetting shorewall lebih baiknya saya kasih mukadimah
mengenai shorewall sebelumnya. Shorewall adalah sebuah tool firewall
yang menggunakan IPTABLES sebagai pengeksekusi firewallnya. Dimana
IPTABLES adalah tool firewall yang ada di Linux dan sudah di include kan
ke kernel, jadi kalau kita nginstall Linux otomatis kita telah
menginstall IPTABLES. Dengan IPTABLES saja sebenernya sudah cukup untuk
membangun sebuah firewall, namun bila kita membangun firewall dari
IPTABLES tanpa tool itu sama saja dengan menyiksa diri sendiri.
Dengan tool shorewall ini saya merasa dimanjakan dengan kemudahannya
dalam membangun firewall. Kita cuma perlu menentukan aturan defaultnya
lalu aturan khususnya juga pada masqueradingnya.
Shorewall juga dapat digunakan untuk loadbalancing, dan sangat mudah
sekali dalam penggunaanya (baru baca, belum pernah nyoba saya).
OK. Langsing, eh salah langsung maksudku, kita menuju ke acara inti
yaitu instalasi dan setting shorewall. Dalam contoh ini saya menggunakan
Ubuntu Server 8.04.2. Pertama kita install dulu paket shorewallnya
apin@proxy-labjar:~$ sudo apt-get install shorewall
setelah selesai maka shorewall telah terinstall pada komputer kita.
Untuk settingan shorewall terdapat pada folder /etc/shorewall, namun
secara didalam folder tersebut hanya terdapat satu file yaitu
shorewall.conf, namun yang kita butuhkan bukan itu saja. Langsung copy
file policy, rules, zones, interfaces, masq yang berada pada folder
/usr/share/doc/shorewall-common/default-config/ ke /etc/shorewall.
Dalam tutorial yang saya tulis ini dimana eth0 terhubung ke internet dan eth1 ke local.
Yang pertama perlu kita edit adalah file interfaces, file ini
mendefinisikan interface yang digunakan untuk selanjutnya di pakai pada
shorewall.
apin@proxy-labjar:~$ sudo nano /etc/shorewall/interfaces
#ZONE INTERFACE BROADCAST OPTIONS
int eth0 detect
loc eth1 detect
#LAST LINE — ADD YOUR ENTRIES BEFORE THIS ONE — DO NOT REMOVE
Setelah mengedit file tersebut lalu save. int dan loc digunakan untuk
menamai zona yang nanti digunakan untuk setting selanjutnya. detect
digunakan untuk otomatis detek alamat broadcast pada tiap-tiap
interface.
Yang kedua kita edit file zones :
apin@proxy-labjar:~$ sudo nano /etc/shorewall/zones
#ZONE TYPE OPTIONS IN OUT
# OPTIONS OPTIONS
fw firewall
int ipv4
loc ipv4
#LAST LINE – ADD YOUR ENTRIES ABOVE THIS ONE – DO NOT REMOVE
Pada file zone ini digunakan untuk mendefinisikan zona sesuai dengan
tipenya. int dan loc bertipe ipv4. fw bertipe firewall, tipe firewall
maksudnya adalah firewall itu sendiri (server dari firewall).
Selanjutnya pada file masq :
apin@proxy-labjar:~$ sudo nano /etc/shorewall/masq
#INTERFACE SOURCE ADDRESS PROTO PORT(S) IPSEC MARK
eth0 eth1
#LAST LINE — ADD YOUR ENTRIES ABOVE THIS LINE — DO NOT REMOVE
File ini digunakan untuk memasquerade local agar terhubung ke
internet dengan nat. Dimana bila ada permintaan dari eth1 (local) akan
dimasquerade (nat) ke eth0 (int).
Setelah itu setting lagi pada file policy :
apin@proxy-labjar:~$ sudo nano /etc/shorewall/policy
#SOURCE DEST POLICY LOG LIMIT:BURST
# LEVEL
$FW int ACCEPT
loc int ACCEPT
loc $FW DROP
int all DROP
all all REJECT info
#LAST LINE — DO NOT REMOVE
File ini berisi policy (aturan secara umum). Dari konfigurasi diatas
berarti $FW (firewall) menuju internet akan di ACCEPT. loc ke int akan
di accept. Namun dari int ke all (loc & $FW) akan ditolak (DROP).
Setelah itu kita edit lagi file rules :
apin@proxy-labjar:~$ sudo nano /etc/shorewall/rules
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE USER/ MARK
# PORT PORT(S) DEST LIMIT GROUP
ACCEPT loc $FW tcp 80
ACCEPT int $FW tcp 80
#LAST LINE — ADD YOUR ENTRIES BEFORE THIS ONE — DO NOT REMOVE
File rules ini berisi tentang aturan secara khusus yang kita
inginkan. Dari konfigurasi diatas berarti jika ada loc menuju $FW
(server) port 80 protokol tcp akan diterima, dalam hal ini server
terdapat server http. Begitu juga yang dari internet juga akan diterima.
Selanjutnya kita edit shorewall.conf. Ubah STARTUP_ENABLED=No menjadi STARTUP_ENABLED=Yes.
Setelah yakin semua konfigurasi telah selesai lalu kita start shorewall.
apin@proxy-labjar:~$ sudo /etc/init.d/shorewall start
Starting “Shorewall firewall”: done.
Firewall dengan Shorewall
Please Enable JavaScript!
Mohon Aktifkan Javascript![ Enable JavaScript ]
Mohon Aktifkan Javascript![ Enable JavaScript ]
0 comments:
Post a Comment