Coding 22 Jun 2025

DDoS: Jurus Ampuh Coding Buat Website Gak Tumbang!

DDoS: Jurus Ampuh Coding Buat Website Gak Tumbang!

Halo, saya Zona Sosmed, seorang pengembang web yang sering berurusan dengan masalah keamanan. Salah satu momok yang paling menakutkan adalah serangan DDoS. Yuk, kita bahas gimana cara ngoding biar website kita tetap kuat!

Apa itu DDoS dan Kenapa Kita Harus Peduli?

DDoS, atau Distributed Denial of Service, itu kayak gini: bayangin website kamu diserbu ribuan bahkan jutaan orang sekaligus. Tapi, orang-orang ini bukan beneran mau lihat konten kamu, mereka cuma mau bikin server kamu kewalahan dan akhirnya tumbang. Akibatnya? Website jadi lemot, bahkan gak bisa diakses sama sekali. Rugi, kan?

Menurut laporan dari Cloudflare, serangan DDoS meningkat tajam, terutama setelah pandemi. Bayangin aja, kuartal kedua 2023, serangan DDoS application-layer (layer 7) naik 15% dibandingkan tahun sebelumnya! Ngeri!

Coding: Senjata Rahasia Kita Melawan DDoS

Nah, sebagai developer, kita punya beberapa trik coding yang bisa kita gunakan untuk memperkuat pertahanan website kita:

  • Rate Limiting: Batasin jumlah permintaan dari satu alamat IP dalam periode waktu tertentu. Misalnya, satu IP cuma boleh akses 10 kali per detik. Lebih dari itu, blokir! Ini bisa dilakuin di level server (misalnya pake Nginx atau Apache) atau di level aplikasi.
  • CAPTCHA: Pastiin yang akses website kita itu manusia beneran, bukan bot jahat. CAPTCHA bisa nangkep bot-bot yang coba bikin permintaan palsu.
  • Filtering: Saring lalu lintas berdasarkan header HTTP atau pola-pola mencurigakan lainnya. Misalnya, blokir permintaan dengan user agent yang aneh atau dari negara yang gak relevan.
  • Content Delivery Network (CDN): CDN itu kayak punya banyak "cabang" server di berbagai lokasi. Jadi, pas ada serangan DDoS, lalu lintasnya bisa disebar ke banyak server, gak cuma fokus ke satu server utama. Ini bikin website kita lebih tahan banting.
  • Web Application Firewall (WAF): WAF itu kayak satpam buat website kita. Dia bisa mendeteksi dan memblokir serangan-serangan berbahaya, termasuk serangan DDoS.

Contoh Kode Sederhana (Rate Limiting dengan Python):


from flask import Flask, request, abort
import time

app = Flask(__name__)

ip_requests = {}
MAX_REQUESTS = 10
TIME_WINDOW = 1 # detik

@app.before_request
def rate_limit():
    ip = request.remote_addr
    now = time.time()

    if ip not in ip_requests:
        ip_requests[ip] = []

    ip_requests[ip] = [req_time for req_time in ip_requests[ip] if req_time > now - TIME_WINDOW]

    if len(ip_requests[ip]) >= MAX_REQUESTS:
        abort(429) # Too Many Requests

    ip_requests[ip].append(now)

if __name__ == '__main__':
    app.run(debug=True)

Kode di atas cuma contoh sederhana, ya. Implementasi yang lebih kompleks mungkin dibutuhkan tergantung kebutuhan website kamu.

Kesimpulan

Serangan DDoS itu emang nyebelin, tapi bukan berarti kita gak bisa ngapa-ngapain. Dengan coding yang tepat, kita bisa bikin website kita lebih kuat dan tahan terhadap serangan. Jangan lupa, keamanan website itu investasi jangka panjang. Jadi, jangan malas untuk terus belajar dan update pengetahuan tentang keamanan web, ya!

ddos mitigation
Bagikan: