מקסם את האבטחה ב- GNU / Linux

שלום חברים מ DesdeLinux, lo prometido es deuda y aquí va un post de כיצד למקסם את ההגנה על מערכות לינוקס ולהישאר ככה בטוח מפני פולשים בנוסף להגנה על המידע בשרתים, מחשבים אישיים או מחשבים ניידים !!!!

קומנצ'נדו

Fail2ban: היא יישום שנכתב בפייתון למניעת חדירה למערכת, הפועלת על ידי ענישה או חסימה של חיבורים מרוחקים המנסים לגשת לכוח אכזרי.

התקנה:

פדורה, RHEL, CentOS:

yum install fail2ban

דביאן, אובונטו:

apt-get install fail2ban

הגדרה:

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local nano /etc/fail2ban/jail.local

בחלק שנקרא [DEFAULT] אנו מבטלים את התגובה ומשנים את #bantime = 3600 ומשאירים את זה כך:

#bantime = 3600 bantime = 604800

בחלק [sshd] אנו מציגים מופעל = נכון ומשאיר אותו כך:

#enabled = true enabled = true

אנו שומרים עם CTRL + O וסוגרים עם CTRL + X

אנו מתחילים את השירות:

פדורה, RHEL, CentOS:

הפעל את fail2ban.service systemctl הפעל את fail2ban.service

דביאן, אובונטו:

שירות fail2ban התחל

דחה את הגישה לשורש באמצעות ssh:

כדי להגן על המכונה שלנו אנו נכחיש ssh דרך משתמש השורש. לשם כך אנו עורכים את הקובץ / etc / ssh / sshd_config באופן הבא:

cp sshd_config sshd_config.bck nano / etc / ssh / sshd_config

אנו מפרשים ומשתנים

# פרוטוקול 2 פרוטוקול 2

אנו מפרשים ומשתנים

# PermitRootLogin כן PermitRootLogin לא

אנו שומרים עם CTRL + O וסוגרים עם CTRL + X

אנו מתחילים את השירות:

פדורה, RHEL, CentOS:

הפעל sshd.service systemctl הפעל sshd.service

דביאן, אובונטו:

שירות sshd להתחיל

למנוע גישה לשרת ssh באמצעות מקש ולאפשר ssh רק עם מקשי RSA

אם אנו רוצים להתחבר עם PC1 לשרת 1, הדבר הראשון שעלינו לעשות הוא ליצור את המפתח שלנו ב- PC1. עם המשתמש שלנו וללא שורש ב- PC1 אנו מבצעים:

ssh-keygen -t rsa -b 8192 (זה מייצר מפתח יותר מאובטח מכיוון שבדרך כלל משתמשים במפתחות מ 1024 עד 2048)

ברגע שיש לנו את הסיסמה שלנו, אנו מעלים אותה ל- Server1:

ssh-copy-id user @ server_ip

לאחר שתסיים זאת, אנו נתחבר לשרת 1 שלנו ונשנה את קובץ ה- nano / etc / ssh / sshd_config עם הרשאות שורש:

משתמש ssh @ Server1 nano / etc / ssh / sshd_config

אנו משנים את השורה שאומרת לזה #PasswordAuthentication כן:

#PasswordAuthentication כן
אימות סיסמא

אנו שומרים עם CTRL + O וסוגרים עם CTRL + X

אנו מפעילים מחדש את שירות ssh:

פדורה, RHEL, CentOS:

הפעל מחדש את sshd.service

דביאן, אובונטו:

שירות sshd מחדש

שנה את יציאת ההאזנה ל- ssh

שוב אנו עורכים / etc / ssh / sshd_config ובחלק המתייחס ליציאה אנו משאירים זאת כך:

# יציאה 22 יציאה 2000 (או כל מספר אחר הגדול מ -2000. בדוגמאות שלנו נשתמש בזה.)

אנו שומרים עם CTRL + O וסוגרים עם CTRL + X

אנו מפעילים מחדש את שירות ssh:

פדורה, RHEL, CentOS:

הפעל מחדש את sshd.service

דביאן, אובונטו:

שירות sshd מחדש

אם הם משתמשים ב- fail2ban יש צורך לשנות את התצורה לגבי התאמת sshd ליציאה.

nano /etc/fail2ban/jail.local

[sshd]
port    = ssh, 2000

[sshd-ddos]
port    = ssh, 2000

[dropbear]
port    = ssh, 2000

[selinux-ssh]
port    = ssh, 2000

אנו שומרים עם CTRL + O וסוגרים עם CTRL + X

אנו מחדשים את השירות:

פדורה, RHEL, CentOS:

הפעל מחדש את systemctl fail2ban.service

דביאן, אובונטו:

שירות fail2ban הפעלה מחדש

Firewall

פדורה, RHEL, CentOS:

Selinux ו- Iptables מופעלים כברירת מחדל במערכות אלה ואני ממליץ לך להמשיך בדרך זו. כיצד לפתוח יציאה עם iptables? בואו נראה איך לפתוח את היציאה החדשה 2000 של יציאת ssh ששינינו בעבר:

לִפְתוֹחַ:

ננו / וכו '/ sysconfig / iptables

ואנחנו משנים את השורה המתייחסת ליציאת ssh המוגדרת כברירת מחדל 22 ומשאירה אותה ככה:

# -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m state - state NEW -m tcp --dport 2000 -j ACCEPT

אנו שומרים עם CTRL + O וסוגרים עם CTRL + X

אנו מפעילים מחדש את השירות:

מערכת הפעלה מחדש של iptables

דביאן, אובונטו:

בדביאן או אובונטו ונגזרות יש לנו חומת אש של UFW שתקל על חיינו מכיוון שהיא מנהלת את Netfilter מאוד קלה.

התקנה:

apt-get להתקין ufw ufw לאפשר

כדי לראות את מצב היציאות הפתוחות שאנו מבצעים:

סטטוס ufw

לפתיחת יציאה (בדוגמה שלנו זה יהיה יציאת ssh החדשה 2000):

ufw אפשר 2000

כדי לשלול יציאה (במקרה שלנו זו תהיה יציאת ברירת המחדל 22 של ssh):

מחק מכחיש 22

וחברים מוכנים. בדרך זו הם ישמרו על המכונות שלכם. אל תשכח להגיב ועד הפעם הבאה: ד.


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   חוטא דיג'ו

    ומערכת הצפנה כגון: https://www.dyne.org/software/tomb/

    1.    חוטא דיג'ו

      וגם משתמשים בכלוב בביתכם אם הם מתחברים באמצעות tty:
      http://olivier.sessink.nl/jailkit/index.html#intro
      https://operativoslinux.wordpress.com/2015/02/21/enjaular-usuarios-en-linux/ (הדרך הקלה)

    2.    יוקיטרו דיג'ו

      זה הרבה יותר טוב ובטוח יותר להצפין את כל מערכת הקבצים.

    3.    פטרצ'קו דיג'ו

      להדרכה הבאה בנושא אבטחה בלינוקס אקח אותה בחשבון: ד.

      1.    יוקיטרו דיג'ו

        זה יהיה טוב גם לדבר על הקשחת הגרעין באמצעות sysctl, הפעלת הערימה האקראית ו- Exec-Shield בגרעינים התומכים בה, מאפשרת גישה ל- dmesg ולמערכת הקבצים / proc, הפעלת דמון ביקורת, הפעלת הגנת TCP להגנה. גישה / dev / mem, השבת אפשרויות ערימת TCP / IP שיכולות להיות מסוכנות או לא בטוחות למערכת (הפניה, הד, ניתוב מקור), השתמש ב- pam_cracklib למשתמשים כדי ליצור סיסמאות חזקות, החשיבות של שימוש במערכת MAC כמו Tomoyo, AppArmor ו- SELinux.

  2.   Kuk דיג'ו

    שימושי מאוד!!!! בדיוק מה שחיפשתי תודה 🙂

    1.    פטרצ'קו דיג'ו

      אתה מוזמן חבר :).

  3.   אנג'לבלייד דיג'ו

    אם משתמשים באפצ'י, לא כואב להוסיף כללים עם mod_rewrite כדי להימנע מבוטים. שימושי מאוד

    http://perishablepress.com/eight-ways-to-blacklist-with-apaches-mod_rewrite/

    1.    רולו דיג'ו

      ובשביל nginx יש טריק או תצורה כלשהי?

  4.   רולו דיג'ו

    ב- debian 8 בקובץ / etc / ssh / sshd_config כבר יש פרוטוקול 2 פעיל והפונקציה PermitRootLogin היא עם האפשרות ללא סיסמה (ניתן להזין שורש רק עם מפתח האימות ומהמחשב שיש לו את המפתח הפרטי)

    pd ב- debian 8 firewalld כבר הגיע שמשאיר אותו קטן עד ufw

    1.    מטלטל דיג'ו

      ראיתם פרם? אני אוהב איך מגדירים את הכללים.

      http://ferm.foo-projects.org/download/examples/webserver.ferm

    2.    פטרצ'קו דיג'ו

      ובכן, אני שמח שדביאן 8 משתמשת ב- firewalld מכיוון שהיא מאוד מאוד מאוד טובה ...

  5.   מטלטל דיג'ו

    היזהר מ- fail2ban שתוקף מייצר חבילות עם ה- ip של המחשב המקומי והופך את DOS לקלה מאוד.

    1.    Hery דיג'ו

      אדם, ה- IP המקומי למחשב והלול-בוק אינם נכללים ברשימת Fail2ban.
      אם לא, יכול להיות שיש לנו תוצאות כוזבות.

  6.   ג'ייסון סוטו דיג'ו

    המלצות טובות ויעילות מאוד ... כמובן שבסביבת השרתים ואנחנו מארחים אתר זה כרוך בצעדים נוספים .... כרגע אנו מקיימים פרויקט בשם JackTheStripper שאינו אלא סקריפט bash המכין ומאבטח שרת עם GNU / Linux בהתאם לשיטות האבטחה הטובות ביותר ליישומי אינטרנט ... אתה יכול להכיר את הפרויקט ב http://www.jsitech.com/jackthestripper ....

    1.    יוקיטרו דיג'ו

      סקריפט נחמד אם כי אני אוהב לשמור על הערך של kernel.randomize_va_space = 2

      1.    ג'ייסון סוטו דיג'ו

        הדבר הטוב הוא שלפני הפעלתו תוכלו לשנות אותו מעט לצרכים שלכם ..... שלום ...

    2.    פטרצ'קו דיג'ו

      שלום, כמובן שהפוסט שלי עוסק במבוטח בסיסי וכל אחד מהם צריך להגן על עצמו פחות או יותר בהתאם לשירותים שהתקין במערכות שלו כמו LAMP או FTP, SFTP, BIND ועוד ועוד:) ...

      בפוסט הבא בנושא אבטחה אתייחס לנושאים אלה.

      תודה על המשוב החיובי :).

  7.   נקס דיג'ו

    @petercheco, המדריכים שלך מצוינים, זה יהיה טוב מדריך הצפנה למערכת FreeeBSD, אני לא יודע מתי אתה הולך לעשות את החלק השני בנושא FreeBSD, על תצורה והתאמה אישית של שולחנות עבודה, על חומת האש, על יצירה ו קביעת תצורה של רשת אלחוטית.

    1.    פטרצ'קו דיג'ו

      שלום חבר,
      אני קצת עסוק מכיוון שתדירות הפרסום מציגה, אבל אזכור זאת לפוסט הבא של FreeBSD.

      ברכת שלום :).

  8.   סולראק ריינובאריור דיג'ו

    זה התבטא בתגובות, אין לי מושג או על מה אתה מדבר, אף אחד לא xD
    מאמר נהדר!

  9.   xunil דיג'ו

    פעולה ביטחונית זו מרמזת על הגבלת הציוד בצורה כלשהי?

    1.    פטרצ'קו דיג'ו

      לא ... השימוש הרגיל במערכת אינו מוגבל כלל.

  10.   חוטא דיג'ו

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

    1.    פטרצ'קו דיג'ו

      כל עוד אתה משתמש ב- Windows המותקן מראש על ידי היצרן ...

      1.    חוטא דיג'ו

        שגיאה: זכרו שהתקינו את זה בקושחת ה- BIOS, כלומר, היא מתחילה במערכת בכל אתחול מחדש, לפני מערכת ההפעלה, לפני השדים, קודם כל, והיא לא מאפשרת לכם לעשות שום דבר נגדה. ניתן לעשות זאת, כך שרעיון ה- uefi טוב באופן עקרוני.

  11.   פול דיג'ו

    מאמר מעניין, אקרא אותו בזהירות רבה יותר אחר הצהריים. תודה.

    1.    פטרצ'קו דיג'ו

      בבקשה :). אני שמח.

  12.   קרלוס בסט דיג'ו

    מאמר מצוין, אירחתי את עצמי כל אחר הצהריים וקראתי אותו. הזמן שאתה לוקח להסביר את הכל בזהירות רבה מוערך,

    ברכות מצ'ילה
    קרלוס

    1.    פטרצ'קו דיג'ו

      היי קרלוס,
      תודה רבה לך :).

  13.   בריון דיג'ו

    מכונות לנובו, אם נראה כי הקושחה של הביוס התערבה עם תוכנות זדוניות, המכונות (מחשב נייד למחשב שולחני) תמיד מותקנות עם Windows על ידי היצרן, לאור האמור לעיל ... האם פוסט ... .petercheco?

    1.    יוקיטרו דיג'ו

      גם בלי לעשות את כל זה זה עובד, מכיוון שהתוכנה הזדונית מיועדת לחלונות, ולא לינוקס.

  14.   SynFlag דיג'ו

    דברים וטריקים רבים חסרים לטאפלטים, כגון nmap סחרחורת, כך שמכל היציאות הפתוחות, משקר שמדובר במחשב חלונות המשתמש ב- ttl ובגודל החלון, scanlogd, אבטחת mod apache, grsec, selinux או משהו כזה. החלף ftp ב- sftp, הגבל את מספר החיבורים לכל IP לכל שירות ביציאת X כדי להימנע מלפני DDoS שהם משאירים אותנו ללא שירותים, כמו גם לחסום את ה- IP ששולחים יותר מכל כך הרבה UDP למשך כל כך הרבה שניות.

    1.    פטרצ'קו דיג'ו

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

  15.   שיני-קייר דיג'ו

    אני מקבל שגיאה ב- archlinux בשלב זה בעת מתן שירות ההתחלה, אני נותן לו סטטוס וזה יוצא:
    sudo systemctl מצב fail2ban
    ● fail2ban.service - שירות Fail2Ban
    טעון: נטען (/usr/lib/systemd/system/fail2ban.service; מופעל; הגדרת הגדרות קבועות מראש של ספק: מושבתת)
    פעיל: נכשל (תוצאה: הגבלת התחלה) מאז יום שישי 2015-03-20 01:10:01 CLST; לפני 1 שניות
    Docs: man: fail2ban (1)
    תהליך: 1695 ExecStart = / usr / bin / fail2ban-client -x start (קוד = יציאה, סטטוס = 255)

    20 במרץ 01:10:01 Gundam systemd [1]: הפעלת שירות Fail2Ban נכשלה.
    20 במרץ 01:10:01 Gundam systemd [1]: היחידה fail2ban.service נכנסה למצב נכשל.
    20 במרץ 01:10:01 Gundam systemd [1]: fail2ban.service נכשל.
    20 במרץ 01:10:01 Gundam systemd [1]: בקשת ההתחלה חוזרת על עצמה מהר מדי עבור fail2ban ... קרח
    20 במרץ 01:10:01 Gundam systemd [1]: הפעלת שירות Fail2Ban נכשלה.
    20 במרץ 01:10:01 Gundam systemd [1]: היחידה fail2ban.service נכנסה למצב נכשל.
    20 במרץ 01:10:01 Gundam systemd [1]: fail2ban.service נכשל.
    רמז: כמה שורות היו eellipsized, להשתמש -l להראות במלואו.
    קצת עזרה? D:

    1.    פטרצ'קו דיג'ו

      שלום, אם הפעלת את fail2ban עם systemctl הפעל את fail2ban.service ו- systemctl הפעל את fail2ban.service, הבעיה תהיה בתצורת הכלא שביצעת. אנא בדוק את הכלא שלך וודא שהכל בסדר.

      ברכות
      פטרצ'קו

      1.    מייקל פרנקו דיג'ו

        קודם כל הדרכה טובה. דברים רבים חסרים אך התמקדת ביסודות.

        shini-kire, בדוק את /var/log/fail2ban.log שלך

        ברכות.

      2.    פטרצ'קו דיג'ו

        תודה @Maykel Franco :).

  16.   127 דיג'ו

    טוב,

    fail2ban עליהם להתקין אותו במחשב ביתי או שזה יותר לשרתים ???

    תודה.

    1.    פטרצ'קו דיג'ו

      במקום עבור השרתים, אבל אם אתה נמצא ב- Wi-Fi נגיש ליותר אנשים ממך, זה טוב ...

  17.   רודריגו דיג'ו

    שלום חבר, זה נראה לי פוסט אבטחה טוב בחלק של שריפה קצרה בהפצות גנו / לינוקס. אני כותב את ההערה הזו כי אני עושה את זה בהפצה של אובונטו 14.04 בידיעה שזה כבר ב 15.04 מה קורה האם הבעיה הבאה אני נכנס ל- nano /etc/fail2ban/jail.local כשורש ואין לי שום ויזואליזציה בחלק sshd ואני שומר בחלק שנקרא [DEFAULT] אנו מפרקים את התצורה ומשנים #bantime = 3600 ו-
    בחלק [sshd] אנו מציגים מופעל = נכון ומשאיר אותו כך:
    # מאופשר = נכון
    מופעל = נכון
    לא נראה כי מ- sshd שיכול להיות בגלל שאני עובד בגרסה הקודמת תודה