Dalam mengadmini server, sering kita menemui hal-hal yang lucu. Mulai dari port scanning, bruteforce password, vulnerabilities test, sampai pada perbuatan paling keji dan munkar. DoS/DDoS.
Khusus yang terakhir ini, memang sangat merepotkan, bisa bikin tagihan bandwidth menggila, menyebabkan sistem jadi tidak stabil, sampek kemungkinan kerusakan hardware.
Sebenere, ada cara yang cukup sederhana buat mengatasi DDoS ini, dengan catatan, DDoS nya nggak akut, dan kita punya akses ke root.
Pertama, kita lihat ip berapa saja yang terkoneksi ke mesin kita, dan berapa jumlah requestnya. Hal ini bisa dilakukan dengan perintah:
netstat -na |grep ":80" |awk '{print$5}' |cut -d: -f1 |sort | uniq -c | sort -nk 1
Nanti akan muncul kurang lebih dengan format
[jumlah request] [nomor ip]
[jumlah request] [nomor ip]
[jumlah request] [nomor ip]
Urut dari request paling sedikit, terus kebawah dengan jumlah request paling banyak. Dalam kasus ini, request ke port 80. Untuk memeriksa port lain, cukup ganti :80 dengan port yang kita mau. Request yang cukup banyak dalam satu ip, katakanlah lebih dari 30, sangat layak dicurigai sebagai pelaku DoS. Dengan pertimbangan, bukan ip isp. (bisa dikonfirmasi dengan whois)
Setelah diketahui ip mana yang layak dicurigai, kita bisa tambahkan ke konfigurasi iptables agar men-drop request dari ip yang kita curigai. Perintahnya kurang lebih:
iptables -I INPUT -s 67.228.166.103 -j DROP
Contoh perintah tadi men-drop semua koneksi dari ip 67.228.166.103, sehingga ip tersebut tidak bisa terkoneksi lagi dengan server kita. Lakukan perintah itu pada semua ip yang dicurigai sebagai pelaku DoS.
Dan hasilnya, server kembali enteng karena biang keroknya sudah diatasi.
Eh iya, ada baiknya dicatat ip berapa saja yang kita drop agar besok-besok mudah membuka blokadenya. Kita gak mau salah sasaran atau terlalu kejam dengan memblok satu ip seumur umur karena pernah ngusili kita. Lagipula belum tentu juga empunya ip pelakunya. Bisa juga mereka cuma korban.
Nah buat membuka blokade, bisa dengan perintah seperti ini:
iptables -D INPUT -s 67.228.166.103 -j DROP
yang akan membebaskan ip 67.228.166.103 dari blokade.
ps.
Buat yang sudah tahu, dilarang ngejek, ini sekalian buat catetan saya sendiri biar ndak lupa.

sesungguhnya perbuatan tersebut adalah keji dan munkar, tapi kalo kita duluan dikeji-i, maka kita balas keji. #eaaa
Yah, tadi belum selese kepencet publish. Udah di pertamax wae sama Kang Hielmy #wahihi
haha… ternyata masih ada lanjutannya, kirain sampe situ, jadi gak relepan nih kayaknya komennya. yg penting pertamax gan!
wah saya gak ngerti soal pemrograman, tapi salam kenal saja ya
make favorite dolo ah….
emang susah yah pny klient hacker hihihihihi.. butuh ekstra monitoring dari admin XD
Bad’s Joke :p
hmmm..nah..kalo cuma 4-5 IP yang maenan DDOS mungkin bisa diatasin dengan blacklist IP mas, tapi aQ bingungnya kalo misalnya yang DDOS tu nyampe 1400an IP (milw0rm’s case)..itu digimanain ya mas? mohon pencerahannya..hehe
@linx
. Well, ‘non-heker’ pun pernah berhasil menghentikan ddos dari 750 ribu (ya, ribu) dengan pengaturan firewall, yang baik.
first of all, saya gak nyangka millw0rm bakalan down ‘hanya’ dengan 1400 ip. Mengingat itu situs heker
Untuk penghentian banyak ip, tekniknya sangat variatif tergantung tipe serangannya. Tapi pada umumnya penutupan port yang gak perlu cukup membantu. Untuk awalnya, bisa dipasang apf atau csf sebagai firewall. bisa juga dipertimbangkan mereduksi timeout tcp di kernel untuk mengurangi efek dos.
Dari sisi web servernya, kalau memakai apache bisa dipertimbangkan memasang mod_evasive.
Kalau sedang kejadian di ddos, ya bisa di null kan dulu routing ip nya. Lalu dicoba langkah langkah diatas.
Untuk referensi lanjut, bisa baca di http://www.cybershade.org/modules/articles/view/linux-webserver-security-61.html atau join di http://webhostingtalk.com, disana sudah banyak diskusi soal DoS atau DDoS ini. Soalnya kalau saya post disini nanti gak lucu kan kalau komen lebih panjang dari blogpost nya
saya kurang ngerti pemerograman.,.,.,.
tapi ok buat nambah pengetahuan.,.,
Wahiii too…
Ddos itu = nyebai
DDOS pantatnya aja gan :p
bukannya ada cara lebih mudah? matikan port 80 misalnya. *jogingmalammalam*
@ mas lantip
sisan pateni wae servere, cabut stop kontake
*melu joging*
ini semcama clean up gitu yah om? mohon pencerahan yah om
thanks nubi mampir ..
walah salah maksudnya *semacam
jaman biyen aku yo tau mikir lha kok ra dipateni servere wae kok repot2 wahahaha ternyata …