Paano Protektahan ang Iyong VPS mula sa DDoS Attacks: Praktikal na Gabay
Komprehensibong gabay sa pagprotekta ng iyong VPS mula sa DDoS attacks gamit ang firewalls, rate limiting, at iba pang napatunayang methods.

Ang DDoS attacks (Distributed Denial of Service) ay maaaring mag-offline ng iyong server sa loob ng ilang minuto, na nagreresulta sa pagkawala ng kita, kawalan ng kasiyahan ng customer, at pinsala sa reputasyon. Noong 2026, naging mas sopistikado at accessible ang mga ganitong pag-atake. Sa kabutihang palad, umunlad din ang mga modernong protection methods. Ipapakita ng gabay na ito kung paano protektahan ang iyong Hiddence VPS mula sa pinakakaraniwang uri ng DDoS attacks.
Ano ang DDoS Attack?
Nangyayari ang DDoS attack kapag maraming computer (botnet) ang sabay-sabay na nagpapadala ng mga request sa iyong server, na nag-o-overwhelm sa resources nito at ginagawa itong hindi available sa mga lehitimong user.
Mga Pangunahing Uri ng DDoS Attacks
- Volumetric Attacks (L3/L4): UDP flood, ICMP, SYN flood — nag-o-overwhelm sa network bandwidth
- Application Layer Attacks (L7): HTTP flood, Slowloris — tumutukoy sa application layer
- Protocol Attacks: Sinasamantala ang mga vulnerability sa network protocols
Built-in na Proteksyon ng Hiddence
Lahat ng Hiddence VPS ay may kasamang basic Layer 3-4 DDoS protection (network level). Awtomatikong sinasala nito ang karamihan sa volumetric attacks. Gayunpaman, nangangailangan ng karagdagang configuration ang Layer 7 (application) attacks.
Hakbang 1: Firewall Setup
Ang unang linya ng depensa ay ang tamang firewall configuration. Ang UFW (Uncomplicated Firewall) ay isang simple at epektibong tool para sa Ubuntu/Debian.
# I-install ang UFW
sudo apt update && sudo apt install ufw -y
# Payagan ang SSH (MAHALAGA! Gawin ito bago paganahin ang UFW)
sudo ufw allow 22/tcp
# Payagan ang HTTP at HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# Paganahin ang UFW
sudo ufw enable
# Suriin ang status
sudo ufw status verbose
# Advanced protection rules:
# Limitahan ang SSH connections (brute force protection)
sudo ufw limit 22/tcp
# I-block ang ICMP ping floods
sudo nano /etc/ufw/before.rules
# Idagdag pagkatapos ng *filter:
-A ufw-before-input -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
-A ufw-before-input -p icmp --icmp-type echo-request -j DROP
# Proteksyon laban sa SYN flood
sudo nano /etc/sysctl.conf
# Idagdag:
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 5
# I-apply ang mga pagbabago
sudo sysctl -pHakbang 2: I-install ang Fail2Ban
Awtomatikong binablock ng Fail2Ban ang mga IP address na nagpapakita ng kahina-hinalang aktibidad (maraming nabigong pagtatangka sa login, port scanning).
# I-install
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
# Configuration para sa SSH at HTTP protection
# Gumawa ng local configuration
sudo nano /etc/fail2ban/jail.local
# Idagdag:
[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 5
banaction = ufw
[sshd]
enabled = true
port = 22
logpath = /var/log/auth.log
[nginx-http-auth]
enabled = true
filter = nginx-http-auth
port = http,https
logpath = /var/log/nginx/error.log
[nginx-limit-req]
enabled = true
filter = nginx-limit-req
port = http,https
logpath = /var/log/nginx/error.log
# I-restart ang Fail2Ban
sudo systemctl restart fail2ban
# Suriin ang status
sudo fail2ban-client statusHakbang 3: Proteksyon ng Nginx
Kung gumagamit ka ng Nginx, i-configure ang rate limiting para protektahan laban sa HTTP flood attacks.
sudo nano /etc/nginx/nginx.conf
# Idagdag sa http block:
http {
# Request limit: 10 requests per second per IP
limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
# Connection limit
limit_conn_zone $binary_remote_addr zone=addr:10m;
# Slowloris protection
client_body_timeout 10s;
client_header_timeout 10s;
keepalive_timeout 5s 5s;
send_timeout 10s;
# Natitirang configuration...
}
# Sa server block idagdag:
server {
location / {
# I-apply ang request limit
limit_req zone=one burst=20 nodelay;
# Connection limit: max 10 per IP
limit_conn addr 10;
# Iyong configuration...
}
}
# Subukan ang configuration at i-reload
sudo nginx -t
sudo systemctl reload nginxHakbang 4: Gumamit ng CDN
Para sa maximum protection, gumamit ng CDN service tulad ng Cloudflare. Gumaganap ang CDN bilang proxy, na nagtatago sa tunay na IP ng iyong server at sumisipsip sa karamihan ng DDoS attacks. Mga benepisyo: itago ang tunay na IP, awtomatikong pagsasala ng malisyosong traffic, load distribution, libreng SSL/TLS, WAF para sa L7 protection.
- Magrehistro sa cloudflare.com (available ang free plan)
- Idagdag ang iyong domain at baguhin ang NS records sa iyong registrar
- Paganahin ang 'Proxy' mode (orange cloud) para sa DNS records
- Itakda ang SSL mode sa 'Full (strict)' sa SSL/TLS section
- Paganahin ang 'DDoS Protection' at 'Bot Fight Mode' sa security settings
Hakbang 5: Monitoring
Nakatutulong ang regular monitoring na ma-detect ang mga pag-atake nang maaga.
# Subaybayan ang active connections
watch -n 1 'ss -s'
# Tingnan ang top IPs ayon sa connection count
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
# Tingnan ang logs sa real-time
sudo tail -f /var/log/nginx/access.log
sudo journalctl -u nginx -f
# Suriin ang blocked IPs sa Fail2Ban
sudo fail2ban-client status sshdMga Emergency Measures
Kung mayroon nang pag-atake na nagaganap, gawin ang mga sumusunod na hakbang:
- Kilalanin ang source: Gumamit ng 'netstat' o logs para kilalanin ang mga umaatakeng IPs
- Pansamantalang block: sudo ufw insert 1 deny from ATTACKING_IP
- I-block ang buong subnets: sudo ufw deny from 123.45.0.0/16
- Limitahan ang rate limit: Pansamantalang ibaba ang Nginx limits sa 1-5 req/s
- Makipag-ugnayan sa support: Makipag-ugnayan sa Hiddence support para sa advanced protection activation
- Paganahin ang 'Under Attack Mode' sa Cloudflare (kung gumagamit)
Best Practices
- Huwag kailanman i-publish ang tunay na IP ng iyong server kung gumagamit ng CDN
- Regular na i-update ang system: sudo apt update && sudo apt upgrade
- Gumamit ng SSH keys sa halip na passwords para sa server access
- Baguhin ang default SSH port (22) sa non-standard
- I-set up ang awtomatikong backups para sa mabilis na recovery
- Gumamit ng hiwalay na IPs para sa kritikal na services
- Paganahin ang logging at regular na suriin ang logs para sa kahina-hinalang aktibidad
- Isaalang-alang ang paggamit ng geographic blocking kung hindi global ang iyong service