Friday, August 3, 2012

Memantau Bandwidht dengan Iptables


Sistem operasi Linux telah menyediakan sejumlah aplikasi manajemen dan monitoring bandwidth. Hasil pencarian di freshmeat.net dengan kata kunci bandwidth, akan menghasilkan sejumlah nama aplikasi. Namun jika sekedar ingin mengetahui total penggunaan bandwidth, gunakan saja iptables.

Yang menarik bagi saya adalah kita dapat menggunakan tool iptables (default terinstal), yang selama ini diketahui adalah tool untuk mensetup firewall dan network address translation di Linux, namun dapat juga digunakan untuk memantau atau memonitor penggunaan bandwidth. Hal ini dikarenakan iptables juga menyediakan fitur melakukan penghitungan total atau jumlah packet dan byte. Hanya saja, tentunya Anda harus membuat terlebih dahulu rule-rule firewall yang Anda maksudkan untuk dapat menghitung total packet dan byte yang diterima dari Internet, dan yang dikirim ke internet dari jaringan lokal Anda. Dengan cara seperti itu, maka Anda harus menggunakan sistem Linux sebagai gateway atau Internet connection sharing bagi jaringan lokal Anda, dan pada gateway Linux tersebutlah Anda harus men-setup rule-rule firewall untuk melakukan bandwidth monitoring menggunakan iptables. Dalam artikel kali ini, saya ingin menjelaskan secara singkat bagaimana kita dapat melakukan monitoring penggunaan bandwidth Internet berdasarkan service tertentu, seperti HTTP, SMTP, POP3, DNS, dan SSH.

Pertama-tama perhatikan gambar berikut :


Itu adalah skenario yang akan kita buat, dimana kita akan membuat rule firewall untuk memungkinkan kita memantau statistik atau total penggunaan bandwidth Internet
yang dilakukan oleh jaringan lokal berdasarkan service tertentu.

1. Langkah pertama dalam membuat rule firewall adalah membuat chain baru dengan nama “DOWNLOAD” dan "UPLOAD" dengan perintah berikut :

# iptables -N DOWNLOAD
# iptables -N UPLOAD
# iptables -nL


2. Setelah mendefinisikan chain baru, selanjutnya mendefinisikan rule-rule firewall untuk mengklasifkasikan traffic FORWARD menjadi traffic UPLOAD dan DOWNLOAD. Langkahnya sebagai berikut:

# iptables -A FORWARD -s 192.168.1.0/24 -o eth0 -j UPLOAD
# iptables -A FORWARD -d 192.168.1.0/24 -i eth0 -j DOWNLOAD


3. Selanjutnya, membuat rule-rule firewall untuk menyesuaikan traffic UPLOAD dan DOWNLOAD dengan service HTTP, SMTP, POP3, DNS, dan SSH, seperti berikut ini:

# iptables -A UPLOAD -p tcp -s 192.168.1.0/24 –dport 80
# iptables -A UPLOAD -p tcp -s 192.168.1.0/24 –dport 25
# iptables -A UPLOAD -p tcp -s 192.168.1.0/24 –dport 110
# iptables -A UPLOAD -p tcp -s 192.168.1.0/24 –dport 53
# iptables -A UPLOAD -p udp -s 192.168.1.0/24 –dport 53
# iptables -A UPLOAD -p tcp -s 192.168.1.0/24 –dport 22
# iptables -A DOWNLOAD -p tcp -d 192.168.1.0/24 –dport 80
# iptables -A DOWNLOAD -p tcp -d 192.168.1.0/24 –dport 25
# iptables -A DOWNLOAD -p tcp -d 192.168.1.0/24 –dport 110
# iptables -A DOWNLOAD -p tcp -d 192.168.1.0/24 –dport 53
# iptables -A DOWNLOAD -p udp -d 192.168.1.0/24 –dport 53
# iptables -A DOWNLOAD -p tcp -d 192.168.1.0/24 –dport 22


4. Jangan lupa untuk menyimpan rule yang ada dengan menjalankan perintah berikut ini:

# iptables-save > /etc/network/iptables.conf

5. Selanjutnya dapat kita lakukan pemantauan bandwidth. Untuk melihat total bandwidth upload dan download, perintahnya sebagai berikut:

# iptables -nL FORWARD -v

6. Untuk melihat rincian bandwidth download setiap service, perintahnya sebagai berikut:

# iptables -nL DOWNLOAD -v

7. Untuk melihat rincian bandwidth upload setiap service, perintahnya sebagai berikut:

# iptables -nL UPLOAD -v

Dan selamat memantau bandwidht! :D

SUMBER : Majalah InfoLINUX Edisi 2 tahun 2012

No comments:

Post a Comment