חזרה לבלוג
ינואר 19, 2026מדריכים

איך להגן על ה-VPS שלך מפני התקפות DDoS: מדריך מעשי

מדריך מקיף להגנה על ה-VPS שלך מפני התקפות DDoS באמצעות חומות אש, הגבלת קצב ושיטות מוכחות אחרות.

איך להגן על ה-VPS שלך מפני התקפות DDoS: מדריך מעשי

התקפות DDoS (Distributed Denial of Service) יכולות לקחת את השרת שלך לא מקוון תוך דקות, מה שמוביל לאובדן הכנסות, אי שביעות רצון לקוחות ונזק למוניטין. בשנת 2026, התקפות כאלה הפכו מתוחכמות ונגישות יותר. למרבה המזל, שיטות הגנה מודרניות גם התפתחו. מדריך זה יראה לך כיצד להגן על ה-VPS של Hiddence שלך מפני הסוגים הנפוצים ביותר של התקפות DDoS.

מהי התקפת DDoS?

התקפת DDoS מתרחשת כאשר מספר מחשבים (בוטנט) שולחים בקשות לשרת שלך בו-זמנית, מה שמכריע את המשאבים שלו והופך אותו ללא זמין למשתמשים לגיטימיים.

סוגים עיקריים של התקפות DDoS

  • התקפות נפחיות (L3/L4): הצפת UDP, ICMP, הצפת SYN — מכריעות רוחב פס רשת
  • התקפות שכבת יישום (L7): הצפת HTTP, Slowloris — ממוקדות בשכבת היישום
  • התקפות פרוטוקול: מנצלות פגיעויות בפרוטוקולי רשת

הגנה מובנית של Hiddence

כל ה-VPS של Hiddence כוללים הגנת DDoS בסיסית בשכבות 3-4 (רמת רשת). זה מסנן אוטומטית את רוב ההתקפות הנפחיות. עם זאת, התקפות שכבה 7 (יישום) דורשות תצורה נוספת.

שלב 1: הגדרת חומת אש

קו ההגנה הראשון הוא תצורת חומת אש נכונה. UFW (Uncomplicated Firewall) הוא כלי פשוט ויעיל עבור אובונטו/דביאן.

bash
# התקן UFW
sudo apt update && sudo apt install ufw -y

# אפשר SSH (חשוב! עשה זאת לפני הפעלת UFW)
sudo ufw allow 22/tcp

# אפשר HTTP ו-HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# הפעל UFW
sudo ufw enable

# בדוק סטטוס
sudo ufw status verbose

# כללי הגנה מתקדמים:
# הגבל חיבורי SSH (הגנה מפני כוח גס)
sudo ufw limit 22/tcp

# חסום הצפות ICMP ping
sudo nano /etc/ufw/before.rules
# הוסף אחרי *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

# הגנה מפני הצפת SYN
sudo nano /etc/sysctl.conf
# הוסף:
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 5

# החל שינויים
sudo sysctl -p

שלב 2: התקן Fail2Ban

Fail2Ban חוסם אוטומטית כתובות IP המציגות פעילות חשודה (מספר ניסיונות התחברות כושלים, סריקת פורטים).

bash
# התקן
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

# תצורה להגנת SSH ו-HTTP
# צור תצורה מקומית
sudo nano /etc/fail2ban/jail.local

# הוסף:
[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

# הפעל מחדש את Fail2Ban
sudo systemctl restart fail2ban

# בדוק סטטוס
sudo fail2ban-client status

שלב 3: הגנת Nginx

אם אתה משתמש ב-Nginx, הגדר הגבלת קצב כדי להגן מפני התקפות הצפת HTTP.

bash
sudo nano /etc/nginx/nginx.conf

# הוסף לבלוק http:
http {
    # מגבלת בקשות: 10 בקשות לשנייה לכל IP
    limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
    
    # מגבלת חיבורים
    limit_conn_zone $binary_remote_addr zone=addr:10m;
    
    # הגנה מפני Slowloris
    client_body_timeout 10s;
    client_header_timeout 10s;
    keepalive_timeout 5s 5s;
    send_timeout 10s;
    
    # שאר התצורה...
}

# בבלוק server הוסף:
server {
    location / {
        # החל מגבלת בקשות
        limit_req zone=one burst=20 nodelay;
        
        # מגבלת חיבורים: מקסימום 10 לכל IP
        limit_conn addr 10;
        
        # התצורה שלך...
    }
}

# בדוק תצורה וטען מחדש
sudo nginx -t
sudo systemctl reload nginx

שלב 4: השתמש ב-CDN

להגנה מקסימלית, השתמש בשירות CDN כמו Cloudflare. CDN פועל כפרוקסי, מסתיר את ה-IP האמיתי של השרת שלך ובולע את רוב התקפות ה-DDoS. יתרונות: הסתר IP אמיתי, סינון תעבורה זדונית אוטומטי, חלוקת עומס, SSL/TLS חינמי, WAF להגנת L7.

  • הירשם ב-cloudflare.com (תוכנית חינמית זמינה)
  • הוסף את הדומיין שלך ושנה רשומות NS ברישום הדומיין שלך
  • אפשר מצב 'Proxy' (ענן כתום) עבור רשומות DNS
  • הגדר מצב SSL ל-'Full (strict)' בסעיף SSL/TLS
  • אפשר 'DDoS Protection' ו-'Bot Fight Mode' בהגדרות אבטחה

שלב 5: ניטור

ניטור קבוע עוזר לזהות התקפות מוקדם.

bash
# נטר חיבורים פעילים
watch -n 1 'ss -s'

# צפה ב-IPs המובילים לפי מספר חיבורים
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

# צפה ביומנים בזמן אמת
sudo tail -f /var/log/nginx/access.log
sudo journalctl -u nginx -f

# בדוק IPs חסומים ב-Fail2Ban
sudo fail2ban-client status sshd

אמצעי חירום

אם התקפה כבר מתבצעת, נקט באמצעים הבאים:

  • זהה את המקור: השתמש ב-'netstat' או יומנים כדי לזהות IPs תוקפים
  • חסימה זמנית: sudo ufw insert 1 deny from ATTACKING_IP
  • חסום תת-רשתות שלמות: sudo ufw deny from 123.45.0.0/16
  • הגבל מגבלת קצב: הורד זמנית את מגבלות Nginx ל-1-5 req/s
  • צור קשר עם תמיכה: פנה לתמיכה של Hiddence להפעלת הגנה מתקדמת
  • אפשר 'Under Attack Mode' ב-Cloudflare (אם משתמש)

שיטות עבודה מומלצות

  • לעולם אל תפרסם את ה-IP האמיתי של השרת אם משתמש ב-CDN
  • עדכן את המערכת באופן קבוע: sudo apt update && sudo apt upgrade
  • השתמש במפתחות SSH במקום סיסמאות לגישת שרת
  • שנה את פורט SSH ברירת המחדל (22) ללא סטנדרטי
  • הגדר גיבויים אוטומטיים לשחזור מהיר
  • השתמש ב-IPs נפרדים לשירותים קריטיים
  • אפשר רישום ובדוק יומנים באופן קבוע לפעילות חשודה
  • שקול להשתמש בחסימה גיאוגרפית אם השירות שלך אינו גלובלי