EQVPS

איך להגדיר fail2ban לחסימת התקפות brute-force

עצרו את ניחוש הסיסמאות המתמיד על השרת שלכם: fail2ban צופה בלוגים שלכם וחוסם אוטומטית כתובות IP שנכשלות בכניסה יותר מדי פעמים. התקינו אותו, הפעילו את כלא ה-SSH, וכווננו את חוקי החסימה — בכמה פקודות.

גם עם כל השאר נעול, בוטים לעולם לא מפסיקים לנסות סיסמאות מול פורט 22 — זה רעש רקע ועומס מתמידים. fail2ban צופה בלוגים שלכם וחוסם אוטומטית כל IP שנכשל בכניסה יותר מדי פעמים, כך שהתוקפים ננעלים בחוץ אחרי כמה ניסיונות במקום לנחש לנצח. זו התקנה קטנה וירידה גדולה בספאם הלוגים.

1. התקינו את fail2ban

sudo apt update && sudo apt install -y fail2ban

2. צרו תצורה מקומית

לעולם אל תערכו את ה-jail.conf המסופק ישירות — עקפו אותו ב-jail.local:

sudo tee /etc/fail2ban/jail.local > /dev/null <<'EOF'
[DEFAULT]
# don't ban yourself — add your home/office IP
ignoreip = 127.0.0.1/8 ::1
bantime  = 1h
findtime = 10m
maxretry = 5

[sshd]
enabled = true
EOF

זה חוסם IP לשעה אחרי 5 כניסות כושלות בתוך 10 דקות. הוסיפו את ה-IP שלכם ל-ignoreip כך שסיסמה שהוקלדה שגוי לעולם לא תנעל אתכם בחוץ.

3. התחילו אותו והפעילו ב-boot

sudo systemctl enable --now fail2ban

4. בדקו את כלא ה-SSH

sudo fail2ban-client status sshd

תראו כמה IP-ים חסומים כרגע — לעתים קרובות מספר מפתיע תוך דקות.

ניהול חסימות

sudo fail2ban-client set sshd unbanip 1.2.3.4   # lift a ban
sudo fail2ban-client status                     # list all jails
sudo systemctl reload fail2ban                  # apply config changes

אזהרות כנות

צעדים הבאים

fail2ban הוא שכבה אחת של שרת מוקשח. שלבו אותו עם אימות מפתח SSH ו-חומת אש UFW, וצעדו את רשימת בדיקת אבטחה ל-VPS חדש המלאה לפני שאתם חושפים משהו לאינטרנט.

שאלות נפוצות

מה fail2ban בעצם עושה?

הוא צופה בקובצי לוג (כמו לוג האימות של SSH) לכשלים חוזרים מאותו IP, וכש-IP חוצה סף הוא מוסיף חסימת חומת אש זמנית. הבוטים שמפציצים את פורט 22 כל היום נחסמים אחרי כמה ניסיונות במקום לנחש לנצח. זו הגנה אוטומטית ומתמשכת.

האם אני עדיין צריך fail2ban אם אני משתמש במפתחות SSH?

הם פותרים בעיות שונות. מפתחות SSH הופכים ניחוש לבלתי אפשרי למעשה; fail2ban עוצר את הרעש והעומס של ניסיונות אינסופיים, ומגן על כל שירות אחר שאתם חושפים (דואר, כניסות ווב). עם SSH במפתח-בלבד הסיכון כבר נמוך, אבל fail2ban הוא הגנה-לעומק זולה וחותך ספאם לוגים.

האם fail2ban יחסום אותי בטעות?

הוא יכול, אם תקלידו את הסיסמה שלכם שגוי כמה פעמים — תיחסמו למשך ה-bantime, ואז תיחסמו-בחזרה אוטומטית. כדי להימנע מנעילה בחוץ אי פעם, הוסיפו את ה-IP שלכם ל-'ignoreip' בתצורה, וזכרו שקונסולת ספק (ל-EQVPS יש אחת) תמיד מחזירה אתכם פנימה.

איך אני רואה מי חסום, או מבטל חסימה של IP?

השתמשו ב-'sudo fail2ban-client status sshd' כדי לראות את הכלא ואת ה-IP-ים החסומים. כדי להסיר חסימה: 'sudo fail2ban-client set sshd unbanip 1.2.3.4'. כדי להוסיף IP מהימן לצמיתות, שימו אותו ב-ignoreip וטענו מחדש.

מה זה bantime, findtime ו-maxretry?

maxretry הוא כמה כשלים מותרים, findtime הוא החלון שבו הם נספרים, ו-bantime הוא כמה זמן החסימה נמשכת. למשל 5 כשלים בתוך 10 דקות מפעילים חסימה של שעה. העלו את bantime (או הגדירו אותו לערך ארוך יותר) לתוקפים עקשנים יותר.

תגובות

אין עדיין תגובות. היו הראשונים.

השאירו תגובה

התגובות עוברות מודרציה לפני שהן מופיעות.