Asfihani Dicatet Ben Ora Lali™ (literally mean: dicatat biar tidak lupa)

Iptables 1.3.5 string match support

Untuk menggunakan iptables yang support string match, maka kernel Linux yang dipakai harus support juga. Silakan diperiksa (pada kernel 2.6.23.9) di Networking —> Networking options —> Network packet filtering framework (Netfilter) —> Core Netfilter Configuration —> string match support) atau CONFIG_NETFILTER_XT_MATCH_STRING=y (atau =m jika sebagai modul) di file .config. Download filesnya disini:

Nah, untuk mengetest iptables sudah support string atau belum tinggal dicoba diketik: iptables -m string seharusnya muncul kira-kira seperti ini:

You must specify `–string’ or `–hex-string’

Kalau muncul seperti ini berarti masih belum disupport:

Couldn’t load match `string’:/lib/iptables/libipt_string.so: cannot open shared object file: No such file or directory

Sekarang untuk mencobanya bikin sebuah rule yang sederhana, misalnya semua paket yang masuk yang mengandung string ‘coba’ akan kita log:

iptables -A INPUT -m string --algo kmp --string "coba" -j LOG

Kemudian buat suatu program yang listen di sembarang port, misalnya disini port 6789, dengan netcat:

nc -l -p 6789

Buka terminal satu lagi kemudian coba telnet ke localhost port 6789:

telnet localhost 6789
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
ini baris satu
coba
quit
^]quit
 
telnet> quit
Connection closed.

Kemudian coba lihat di file syslog, maka akan terdapat entry kira-kira seperti ini:

Dec 11 14:56:25 palestine kernel: IN=lo OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:08:00 src=127.0.0.1 DST=127.0.0.1 LEN=58 TOS=0×10 PREC=0×00 TTL=64 ID=29877 DF PROTO=TCP SPT=62763 DPT=6789 WINDOW=65 RES=0×00 ACK PSH URGP=0

Berati iptables dengan string match support sudah sukses. Jangan lupa, rule diatas hanya mengelog saja, tinggal diubah untuk kebutuhan yang sesuai :)

Random Posts:




No Comments Yet


There are no comments yet. You could be the first!

Leave a Comment