widgets

Selasa, 20 Januari 2015

SSH Access With Port Knocking - Iptables (Anti Bruteforce Attack)

Assalamualaikum wr.wb
kali ini saya akan menulis artikel perdana saya tentang port knocking. sebelumnya akan saya jelaskan apa itu "port knocking". begini logikanya :

Contoh kasus:
A = Andi (sebagai pemilik rumah)
B = Beni (sebagai tamu)

si A berada didalam rumah yang dijaga ketat pintu rumahnya dengan memberikan terali besi sebelum pintu rumah tersebut, yang mengetahui akses pintu rumah itu adalah si B. si B diberi kode untuk membuka terali sebelum membuka akses pintu rumah. jadi si A memberi kode kepada B adalah dengan ketukan kearah terali sebanyak 5 kali. jika seandainya ketukan itu benar, maka si A mengetahui bahwa si B lah yang akan membuka kemudian diizinkannya si B untuk membuka pintu rumah tersebut setelah berhasil mengetuk dengan benar pada terali itu. jika ketukan itu salah, maka si A tidak dapat mengizinkan terali terbuka untuk mengakses pintu berikutnya.

jadi port knocking itu adalah melakukan pengetukan pada port-port yang ada dalam sebuah sistem server. Seperti port ssh, ftp, http, dan lain-lainnya. port knocking ini biasanya di bentengi dengan firewall, port yang akan diakses sebelumnya harus membuka firewall terlebih dahulu baru kemudian melakukan akses ke port selanjutnya.

me@gnomeselpa:~# iptables ­-m recent
me@gnomeselpa:~# iptables -F
me@gnomeselpa:~# iptables -F -t nat
me@gnomeselpa:~# iptables -F -t mangle
me@gnomeselpa:~# iptables -X


Ket: perintah diatas tersebut akan menghapus rule-rule firewall yang kemungkinan sudah ada
me@gnomeselpa:~# iptables -P INPUT DROP
me@gnomeselpa:~# iptables -P OUTPUT ACCEPT
me@gnomeselpa:~# iptables -P FORWARD ACCEPT
Perintah diatas akan mengatur "default policy" untuk chain
me@gnomeselpa:~# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPPT
me@gnomeselpa:~# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -m recent --rcheck --name sshknock --hitcount 3 --seconds 10 -j ACCEPT
Perintah diatas akan membuka port ssh (22) jika IP client telah terdaftar pada list sshknock, dengan jumlah percobaan koneksi sebanyak 3 kali selama 10 detik.
me@gnomeselpa:~# iptables  -A INPUT -m state --state NEW -m tcp -p tcp --dport 1825 -m recent --set --name sshknock -j LOG --log-prefix "knock ssh: "
terdapat port 1825 diatas, yaitu merupakan port untuk membuka port asli ssh (22) dengan beberapa ketukan dengan menggunakan port tersebut.
me@gnomeselpa:~# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 1826 -m recent --remove --name sshknock -j LOG --log-prefix "knock ssh: "
perintah baris diatas ini akan mencoba koneksi ke port 1826 akan menghapus list ip client yang ada di list sshknock yang terletak pada " /proc/net/xt_recent/sshknock ".
me@gnomeselpa:~# iptables-save > /etc/iptables.cfg
me@gnomeselpa:~# echo iptables -c /etc/iptables.cfg >> /etc/rc.local
 perintah ini akan menyimpan pengaturan yang telah dibuat tadi secara permanen, dan jangan lupa pada /etc/rc.local tulisan "exit 0" di beri tanda pagar (#) .
selamat mencoba.....



Sumber:http://selpacode.blogspot.com/2013/12/ssh-access-with-port-knocking-iptables.html

Ditulis Oleh : Unknown // 06.47
Kategori:

0 komentar:

Posting Komentar

 

Blogroll

About

xxx