שלום חברים מ 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
וחברים מוכנים. בדרך זו הם ישמרו על המכונות שלכם. אל תשכח להגיב ועד הפעם הבאה: ד.
ומערכת הצפנה כגון: https://www.dyne.org/software/tomb/
וגם משתמשים בכלוב בביתכם אם הם מתחברים באמצעות tty:
http://olivier.sessink.nl/jailkit/index.html#intro
https://operativoslinux.wordpress.com/2015/02/21/enjaular-usuarios-en-linux/ (הדרך הקלה)
זה הרבה יותר טוב ובטוח יותר להצפין את כל מערכת הקבצים.
להדרכה הבאה בנושא אבטחה בלינוקס אקח אותה בחשבון: ד.
זה יהיה טוב גם לדבר על הקשחת הגרעין באמצעות sysctl, הפעלת הערימה האקראית ו- Exec-Shield בגרעינים התומכים בה, מאפשרת גישה ל- dmesg ולמערכת הקבצים / proc, הפעלת דמון ביקורת, הפעלת הגנת TCP להגנה. גישה / dev / mem, השבת אפשרויות ערימת TCP / IP שיכולות להיות מסוכנות או לא בטוחות למערכת (הפניה, הד, ניתוב מקור), השתמש ב- pam_cracklib למשתמשים כדי ליצור סיסמאות חזקות, החשיבות של שימוש במערכת MAC כמו Tomoyo, AppArmor ו- SELinux.
שימושי מאוד!!!! בדיוק מה שחיפשתי תודה 🙂
אתה מוזמן חבר :).
אם משתמשים באפצ'י, לא כואב להוסיף כללים עם mod_rewrite כדי להימנע מבוטים. שימושי מאוד
http://perishablepress.com/eight-ways-to-blacklist-with-apaches-mod_rewrite/
ובשביל nginx יש טריק או תצורה כלשהי?
ב- debian 8 בקובץ / etc / ssh / sshd_config כבר יש פרוטוקול 2 פעיל והפונקציה PermitRootLogin היא עם האפשרות ללא סיסמה (ניתן להזין שורש רק עם מפתח האימות ומהמחשב שיש לו את המפתח הפרטי)
pd ב- debian 8 firewalld כבר הגיע שמשאיר אותו קטן עד ufw
ראיתם פרם? אני אוהב איך מגדירים את הכללים.
http://ferm.foo-projects.org/download/examples/webserver.ferm
ובכן, אני שמח שדביאן 8 משתמשת ב- firewalld מכיוון שהיא מאוד מאוד מאוד טובה ...
היזהר מ- fail2ban שתוקף מייצר חבילות עם ה- ip של המחשב המקומי והופך את DOS לקלה מאוד.
אדם, ה- IP המקומי למחשב והלול-בוק אינם נכללים ברשימת Fail2ban.
אם לא, יכול להיות שיש לנו תוצאות כוזבות.
המלצות טובות ויעילות מאוד ... כמובן שבסביבת השרתים ואנחנו מארחים אתר זה כרוך בצעדים נוספים .... כרגע אנו מקיימים פרויקט בשם JackTheStripper שאינו אלא סקריפט bash המכין ומאבטח שרת עם GNU / Linux בהתאם לשיטות האבטחה הטובות ביותר ליישומי אינטרנט ... אתה יכול להכיר את הפרויקט ב http://www.jsitech.com/jackthestripper ....
סקריפט נחמד אם כי אני אוהב לשמור על הערך של kernel.randomize_va_space = 2
הדבר הטוב הוא שלפני הפעלתו תוכלו לשנות אותו מעט לצרכים שלכם ..... שלום ...
שלום, כמובן שהפוסט שלי עוסק במבוטח בסיסי וכל אחד מהם צריך להגן על עצמו פחות או יותר בהתאם לשירותים שהתקין במערכות שלו כמו LAMP או FTP, SFTP, BIND ועוד ועוד:) ...
בפוסט הבא בנושא אבטחה אתייחס לנושאים אלה.
תודה על המשוב החיובי :).
@petercheco, המדריכים שלך מצוינים, זה יהיה טוב מדריך הצפנה למערכת FreeeBSD, אני לא יודע מתי אתה הולך לעשות את החלק השני בנושא FreeBSD, על תצורה והתאמה אישית של שולחנות עבודה, על חומת האש, על יצירה ו קביעת תצורה של רשת אלחוטית.
שלום חבר,
אני קצת עסוק מכיוון שתדירות הפרסום מציגה, אבל אזכור זאת לפוסט הבא של FreeBSD.
ברכת שלום :).
זה התבטא בתגובות, אין לי מושג או על מה אתה מדבר, אף אחד לא xD
מאמר נהדר!
פעולה ביטחונית זו מרמזת על הגבלת הציוד בצורה כלשהי?
לא ... השימוש הרגיל במערכת אינו מוגבל כלל.
והדבר המצחיק (הטרגי) הוא שכפי שראינו זה עתה עם מכונות לנובו, אם הקושחה של ה- BIOS מטופלת בתוכנות זדוניות, שום דבר שאתה עושה לא משנה.
כל עוד אתה משתמש ב- Windows המותקן מראש על ידי היצרן ...
שגיאה: זכרו שהתקינו את זה בקושחת ה- BIOS, כלומר, היא מתחילה במערכת בכל אתחול מחדש, לפני מערכת ההפעלה, לפני השדים, קודם כל, והיא לא מאפשרת לכם לעשות שום דבר נגדה. ניתן לעשות זאת, כך שרעיון ה- uefi טוב באופן עקרוני.
מאמר מעניין, אקרא אותו בזהירות רבה יותר אחר הצהריים. תודה.
בבקשה :). אני שמח.
מאמר מצוין, אירחתי את עצמי כל אחר הצהריים וקראתי אותו. הזמן שאתה לוקח להסביר את הכל בזהירות רבה מוערך,
ברכות מצ'ילה
קרלוס
היי קרלוס,
תודה רבה לך :).
מכונות לנובו, אם נראה כי הקושחה של הביוס התערבה עם תוכנות זדוניות, המכונות (מחשב נייד למחשב שולחני) תמיד מותקנות עם Windows על ידי היצרן, לאור האמור לעיל ... האם פוסט ... .petercheco?
גם בלי לעשות את כל זה זה עובד, מכיוון שהתוכנה הזדונית מיועדת לחלונות, ולא לינוקס.
דברים וטריקים רבים חסרים לטאפלטים, כגון nmap סחרחורת, כך שמכל היציאות הפתוחות, משקר שמדובר במחשב חלונות המשתמש ב- ttl ובגודל החלון, scanlogd, אבטחת mod apache, grsec, selinux או משהו כזה. החלף ftp ב- sftp, הגבל את מספר החיבורים לכל IP לכל שירות ביציאת X כדי להימנע מלפני DDoS שהם משאירים אותנו ללא שירותים, כמו גם לחסום את ה- IP ששולחים יותר מכל כך הרבה UDP למשך כל כך הרבה שניות.
עם הדוגמאות שהצגת, משתמש חדש ישתגע בקריאתו ... אתה לא יכול להכניס הכל לפוסט אחד. אני אעשה כמה רשומות :).
אני מקבל שגיאה ב- 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:
שלום, אם הפעלת את fail2ban עם systemctl הפעל את fail2ban.service ו- systemctl הפעל את fail2ban.service, הבעיה תהיה בתצורת הכלא שביצעת. אנא בדוק את הכלא שלך וודא שהכל בסדר.
ברכות
פטרצ'קו
קודם כל הדרכה טובה. דברים רבים חסרים אך התמקדת ביסודות.
shini-kire, בדוק את /var/log/fail2ban.log שלך
ברכות.
תודה @Maykel Franco :).
טוב,
fail2ban עליהם להתקין אותו במחשב ביתי או שזה יותר לשרתים ???
תודה.
במקום עבור השרתים, אבל אם אתה נמצא ב- Wi-Fi נגיש ליותר אנשים ממך, זה טוב ...
שלום חבר, זה נראה לי פוסט אבטחה טוב בחלק של שריפה קצרה בהפצות גנו / לינוקס. אני כותב את ההערה הזו כי אני עושה את זה בהפצה של אובונטו 14.04 בידיעה שזה כבר ב 15.04 מה קורה האם הבעיה הבאה אני נכנס ל- nano /etc/fail2ban/jail.local כשורש ואין לי שום ויזואליזציה בחלק sshd ואני שומר בחלק שנקרא [DEFAULT] אנו מפרקים את התצורה ומשנים #bantime = 3600 ו-
בחלק [sshd] אנו מציגים מופעל = נכון ומשאיר אותו כך:
# מאופשר = נכון
מופעל = נכון
לא נראה כי מ- sshd שיכול להיות בגלל שאני עובד בגרסה הקודמת תודה