Kamis, 07 Januari 2010

Tutorial Iptables dasar 2


Pada tulisan terdahulu kita telah membahas tentang membuat firewall sederhana yaitu memblok semua koneksi masuk dan mengizinkan koneksi keluar. Sekarang kita akan membahas cara aman membuka beberapa hole di firewall kita untuk memungkinkan beberapa koneksi masuk. Untuk melakukan ini terdapat 4 parameter utama dalam penyaringan yaitu :

- Interface – eth0, eth1, ppp0 dll
- IP Address – Single IP Address atau range IP Address
- Protocol – tcp, udp, icmp, semua
- Ports – single port atau range dari port

Interface

Dalam contoh kita terdahulu, kita melihat bagaimana, untuk menerima semua paket masuk pada interface tertentu, dalam hal ini interface lo:

Iptables –A INPUT –i lo –j ACCEPT

Misalkan kita memiliki 2 interfce terpisah, eth0 menyambung ke LAN internal dan eth1 yang merupakan koneksi internet/ekternal kita. Kita mungkin akan mengizinkan semua paket masuk pada LAN tapi memfilter paket masuk pada ekternal, kita bisa melakukan hal ini dengan perintah :

 iptables -A INPUT -i lo -j ACCEPT
 iptables -A INPUT -i eth0 -j ACCEPT

Hati-hati, jika kita ingin mengizinkan semua paket masuk pada exkternal

 iptables -A INPUT -i lo -j ACCEPT
 iptables -A INPUT -i eth1 -j ACCEPT

Tapi lebih baik jangan lakukan ini.

IP Address

Membuka seluruh interface untuk jalan masuk paket tidak dianjurkan, kita mungkin ingin lebih banyak kontrol, apa yang dibolehkan dan apa yang harus ditolak. Kita misalkan, memiliki jaringan kecil komputer yang menggunakan private subnet 192.168.0.x. kita akan membuka firewaal untuk masuk paket dari satu alamat IP terpecaya (misalnya 192.168.0.5)

# Menerima paket-paket dari alamat IP terpercaya
iptables -A INPUT -s 192.168.0.5 -j ACCEPT
# Ubah alamat IP yang sesuai

Pada command diatas menambah (-A) aturan ke chain INPUT untuk sumber (-s) IP Address 192.168.0.5 untuk menerima (ACCEPT) semua paket

Jika kita ingin mengizinkan paket masuk dari suatu network dapat dilakukan dengan perintah

# Menerima paket-paket dari alamat network IP terpercaya
 iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT

Jika kita ingin menyandingkannya dengan mac address, bisa kita lakukan. Untuk melakukan ini, kita perlu meload modul mac, yang memungkinkan penyariangna terhadap mac address. Disini kita akan menggunakan modul mac untuk memeriksa mac address sumber selain IP address.

Iptables –A INPUT –s 192.168.0.5 –m mac --mac-source 00:19:7E:3F:3B:CF –j ACCEPT

Pertama kita gunakan –m mac untuk meload modul mac dan kemudia kita gunakan –mac-source untuk menentukan mac address sumber IP Address (192.168.0.5).

Hal ini dapat berguna untuk mencegah pemalsuan alamat IP.

Port dan Protocol

Sekarang kita melihat pemfilteran terhadap port dan protokol untuk memungkinkan service tertentu sebagai target ACCEPT. Sebelum kita mulai, kita harus benar-benar tahu protokol dan nomor port yang digunakan pada service yang diberikan. Sebagai contoh sederhana, Bittorrent menggunakan tcp pada port 6881, jadi kita perlu untuk membolehkan semua paket tcp pada port 6881.

iptables -A INPUT -p tcp --dport 6881 -j ACCEPT

Ini adalah aturan sederhana untuk menerima semua paket tcp yang masuk ke komputer kita pada port 6881.

Note : Untuk menggunakan penyesuaian destination atau source port (–dport atau –sport), kita harus terlebih dulu menetapkan protokol (tcp, udp, icmp atau all).

Kita juga dapat memasukkan range port, misalnya memungkinkan semua paket tcp pada range 6881-6890

iptables -A INPUT -p tcp --dport 6881:6890 -j ACCEPT

Setelah kita mempelajari dasar2 diatas, untuk pengembangan lebih lanjut, kita dapat menggabungkannya, contoh :

iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 22 -j ACCEPT

Ini akan lebih mengamankan komputer kita.

Selamat Mencoba.

http://www.tirta-fajri.net

Tidak ada komentar: