כיצד להפוך את השרת הבלתי נראה עם
כאשר יש לך שרת נגיש לציבור, האקרים יכולים בקלות לסרוק את כתובת ה- IP שלך ולבדוק יציאות פתוחות (במיוחד יציאה 22 המשמש SSH) בשרת שלך. אחת הדרכים להסתיר את השרת שלך מפני האקרים הוא knockd. Knockd הוא שרת נמל לדפוק. זה מקשיב לכל תנועה על Ethernet או ממשקים זמינים אחרים, מחכה רצפים מיוחדים של להיטים נמל. לקוחות כגון Telnet או מרק יוזמים יציאות port על-ידי שליחת TCP או מנות ליציאה בשרת.
במאמר זה נתבונן איך אנחנו יכולים להשתמש knockd כדי להסתיר שירותים פועל על שרת לינוקס.
התקן Knockd בשרת לינוקס
Knockd זמין במאגרים של רוב distro. בשרת מבוסס דביאן / אובונטו / אובונטו, ניתן להשתמש בפקודת ה- apt-get
כדי להתקין את ה- knockd.
sudo apt- לקבל להתקין knockd
עבור משתמשי Fedora, CentOS או REHL, באפשרותך להשתמש בפקודת yum
:
yum להתקין
התקנה והגדרה של Iptables
אם אין לך Iptables מותקן בשרת שלך, התקן אותו עכשיו.
sudo apt- לקבל להתקין iptables iptables- מתמיד
החבילה iptables-persistent
משתלטת על טעינה אוטומטית של iptables שנשמרו.
הבא, אתה צריך לאפשר חיבורים שכבר הוקמה כמו גם הפעלות הנוכחי באמצעות iptables. השתמש בפקודה הבאה כדי להשיג משימה זו:
iptables-INPUT -m connt - מקושרים, קשורים- JJPT
לאחר מכן, עליך לחסום את כל החיבורים הנכנסים ליציאה 22 SSH.
iptables -A INPUT -p tcp - דפורט 22 -דחה
כעת נשמור את כללי חומת האש באמצעות הפקודות הבאות:
netfilter-persistent שמור netfilter- לטעון מחדש
תוכל להמשיך ולבדוק אם אכן חסמת את היציאה 22 על-ידי התחברות לשרת דרך המחשב.
ssh-server-ip
הגדר את Knockd
עכשיו זה הזמן להגדיר הגדרות ברירת המחדל knockd. הוא נמצא בכתובת "/etc/knockd.conf". לשם כך, עבור לקובץ התצורה של נוקדת באמצעות הפקודה הבאה:
cd / etc sudo leafpad knockd.conf
לצורך ההדגמה, אני משתמש בעורך העלונים. בשרת שלך אתה יכול להשתמש ננו או וי.
צילום המסך מציג את קובץ הגדרות הקופסה.
- אפשרויות : באפשרותך למצוא אפשרויות תצורה עבור Knockd בשדה זה. כפי שאתה יכול לראות את צילום המסך לעיל, הוא משתמש syslog עבור רישום.
- OpenSSH : שדה זה מורכב מרצף, פסק זמן רצף, פקודות ודגלי tcp.
- רצף : הוא מראה את רצף היציאה שיכול לשמש דפוס על ידי הלקוח כדי ליזום פעולה.
- רצף פסק זמן : הוא מראה את הזמן הכולל שהוקצה ללקוחות כדי להשלים את הרצף הנדרש דפיקות.
- פקודה : זוהי הפקודה אשר יבוצע לאחר רצף דפיקות על ידי הלקוח תואם את הדפוס בשדה רצף.
- TCP_FLAGS : זהו הדגל שיש להגדיר על הדפיקות שהונפקו על ידי הלקוח. אם הדגל היה שגוי, אבל דפוס הדפיקות שגוי, הפעולה לא תפעיל.
הערה : הפקודה iptables בקטע OpenSSH בקובץ תצורת Knockd משתמשת באפשרות -A
כדי לצרף כלל זה לסוף שרשרת INPUT. זה גורם לכל החיבורים הנותרים לרדת.
כדי למנוע זאת, החלף את הטקסט שלהלן:
הפקודה = / sbin / iptables-INPUT 1-s% IP% -p tcp --dport 22 -JCEPT
פקודה זו מבטיחה שכלל חדש יתווסף לחלק העליון של שרשרת INPUT כדי לקבל חיבורי ssh.
הפעל והתחל שירות Knockd
השתמש בהליך הבא כדי להפעיל את שירות הקולות ב- "/ etc / default / knock."
שנה ערך מ -0 עד 1 כפי שמוצג בתמונה.
START_KNOCKD = 1
לאחר מכן, שמור וסגור את הקובץ "/ etc / default / knockd."
לאחר מכן, באפשרותך להפעיל את שירות הקולות באמצעות אחת מהפקודות הבאות:
שירות sudo להתחיל
אוֹ
להתחיל
הגיע הזמן לבדוק את שרת לינוקס שלך
עכשיו זה הזמן לבדוק את שרת SSH לינוקס שלך. לפתיחת יציאה 22 בכתובת IP מוגדרת, השתמש במחשב שלהלן. (אתה צריך להתקין knockd
במחשב שלך, יותר מדי)
לדפוק את השרת שלי ip 7000 8000 9000
אתה צריך להחליף את "שרת ה- IP שלי" עם כתובת ה- IP של השרת שלך.
כעת באפשרותך להתחבר ליציאה 22 SSH באמצעות הפקודה הבאה:
ssh-server-ip
לאחר שתסיים עם כל מה שרצית לעשות באמצעות יציאה 22, תוכל לסגור אותו באמצעות הפקודה הבאה:
דפדף-שלי שרת-ip 9000 8000 7000
סיכום
עם נוקד, אתה בטוח היטב כי שרת SSH שלך מאובטח בטוח nad מתוקפים עם סורקים מתוחכמים. בנוסף, אתה לגמרי אחראי על שרת SSH שלך.