- Untuk bisa mengetahui jumlah keluar/masuknya paket data untuk suatu komputer kita harus menghitungnya secara terpisah yaitu untuk yang masuk dan untuk yang keluar. Bila kita akan mengamati sepuluh komputer, maka setidaknya harus ada 20 rule iptables. Chain yang digunakan untuk mengamati adalah chain FORWARD
iptables -N NamaKomputer-out
iptables -A FORWARD -d xxx.xxx.xxx.xxx -j NamaKomputer-in
iptables -A FORWARD -s xxx.xxx.xxx.xxx -j NamaKomputer-out
NamaKomputer = Dapat di ganti sesuai dengan keinginan sendiri
xxx.xxx.xxx.xxx = Di Sesuai dengan IP Komputer target
cek apakah rule yang di buat berhasil
iptables -nvxL FORWARD
2. Di atas dapat kita lihat bahwa kalau kita ingin mengambil besar data(dalam bytes) output iptables -nvxL FORWARD dapat kitapipe kan ke grep dan mengambil nilai kolom kedua dari output yang dihasilkan oleh grep.
iptables -nvxL FORWARD | grep NamaKomputer-in
0 0 bagong-in all -- * * 0.0.0.0/0 10.11.12.3
iptables -nvxL FORWARD | grep NamaKomputer-in | awk '{print $2}'
0
Untuk memudahkan kita dalam memasukkan nilainya ke MRTG kita bisa membuat script kecil seperti ini:
#!/bin/sh
paketIN=`/sbin/iptables -nvxL FORWARD | grep "$1-in" | awk '{print $2}'`
paketOUT=`/sbin/iptables -nvxL FORWARD | grep "$1-out" | awk '{print $2}'`
echo $paketIN
echo $paketOUT
jangan lupa chmod +x namafilescript
untuk jalankannya
./namafilescript NamaKomputer-in, atau
./namafilescript NamaKomputer-out
Pemakaiannya hanyalah dengan cara menuliskan nama scriptnya dengan 1 parameter yaitu [nama komputer], misalnya scriptbacatrafik.sh bagong. Script ini akan mencetak nilai bytes yang keluar dari jaringan kita yang berasal dari komputer "bagong". Angka ini diambil dari iptables, sehingga kata bagong atau apa pun itu harus anda sesuaikan dengan nama chain yang anda gunakan di iptables.
3. Tambahkan aturan yang ada di mrtg.cfg
Nilai yang dimasukkan ke mrtg haruslah berpasangan, pertama untuk in dan kedua untuk out. Nilai ini dapat diambil dari SNMP, dapat pula diambil dari nilai eksekusi program tertentu. Contohmrtg.cfg yang mengambil nilai dari script yang tadi kita buat dapat dilihat di bawah ini.
WorkDir: /var/www/mrtg
Target[NamaKomputer]: `/posisi_file_script/namafilescript.sh NamaKomputer`
Title[NamaKomputer]: NamaKomputer
PageTop[NamaKomputer]: <h1>NamaKomputer</h1>
MaxBytes[NamaKomputer]: 1250000
YLegend[NamaKomputer]: Bytes/s
ShortLegend[NamaKomputer]: B/s
LegendI[NamaKomputer]: Traffic in
LegendO[NamaKomputer]: Traffic out
Legend1[NamaKomputer]: Traffic in Bytes per Second
Setelah di simpan, jalan kan indexmaker untuk membentuk file HTML
indexmaker /path/file/mrtg.cfg > /var/www/mrtg/index.html
4. Pengembangan
Dengan cara pengukuran yang persis sama anda dapat pula mengukur besarnya keluar masuk paket per layanan misal web, ftp, smb, domain, dan sebagainya. Pengukuran dilakukan dengan menggunakan iptables, hanya saja kita tidak mendefinisikan alamat IP per komputer. Yang kita definisikan adalah protokol(TCP/UDP/ICMP) beserta nomor portnya, serta network address jaringan kita seperti contoh di bawah ini.root:~# iptables -N www-in
root:~# iptables -N www-out
root:~# iptables -A FORWARD -d 10.11.12.0/24 -p tcp --dport 80 -j www-in
root:~# iptables -A FORWARD -s 10.11.12.0/24 -p tcp --sport 80 -j ww-out
root:~# iptables -N ftp-in
root:~# iptables -N ftp-out
root:~# iptables -A FORWARD -d 10.11.12.0/24 -p tcp --dport 20:21 -j ftp-in
root:~# iptables -A FORWARD -s 10.11.12.0/24 -p tcp --sport 20:21 -j ftp-out
Contoh rule iptables di atas berguna untuk menghitung:
- Besar paket data yang kita dapatkan dari webserver yang berasal dari luar jaringan kita.
- Besar paket data request ke webserver di luar jaringan kita.
- Besar paket data yang kita download melalui ftp yang berasal dari luar jaringan kita.
- Besar paket data upload melalui ftp ke luar jaringan kita.
Target[www]: `/usr/local/sbin/scriptbacatrafik.sh www`
Title[www]: www
PageTop[www]: <h1>www</h1>
MaxBytes[www]: 1250000
YLegend[www]: Bytes/s
ShortLegend[www]: B/s
LegendI[www]: Traffic in
LegendO[www]: Traffic out
Legend1[www]: Traffic in Bytes per Second
Target[ftp]: `/usr/local/sbin/scriptbacatrafik.sh ftp`
Title[ftp]: ftp
PageTop[ftp]: <h1>ftp</h1>
MaxBytes[ftp]: 1250000
YLegend[ftp]: Bytes/s
ShortLegend[ftp]: B/s
LegendI[ftp]: Traffic in
LegendO[ftp]: Traffic out
Legend1[ftp]: Traffic in Bytes per Second
Selamat mencoba, semoga sukses.
Sumber (Kamas Muhammad http://www.sokam.or.id)
No comments:
Post a Comment