כדי להגדיר חומת אש או חומת אש בלינוקס, אנו יכולים להשתמש ב- iptables, כלי רב עוצמה שנראה נשכח על ידי משתמשים רבים. למרות שישנן שיטות אחרות, כגון טבלאות וטעימות לסינון תנועה ברמת הקישור, או קלמארי ברמת היישום, iptables יכולים להיות שימושיים מאוד ברוב המקרים, ולהטמיע אבטחה טובה במערכת שלנו ברמת התעבורה וההובלה של הרשת. .
ליבת לינוקס מיישמת iptables, חלק ש- מטפל בסינון מנות וכי במאמר זה אנו מלמדים אותך להגדיר בצורה פשוטה. במילים פשוטות, iptables מזהה איזה מידע יכול או לא יכול להיכנס, ומבודד את הצוות שלך מאיומים פוטנציאליים. ולמרות שישנם פרויקטים אחרים כמו Firehol, Firestarter וכו ', רבים מתוכניות חומת האש הללו משתמשות ב- iptables ...
ובכן, בואו נעבוד לעבודה, עם דוגמאות תוכלו להבין הכל טוב יותר (במקרים אלה יש צורך בהרשאות, אז השתמשו בסודו לפני הפקודה או הפכו לשורש):
הדרך הכללית להשתמש ב- iptables ליצור מדיניות סינון היא:
פעולות קלט / פלט של IPTABLES -ARGUMENTS
איפה -ארגומנט הטיעון בו נשתמש, בדרך כלל -P כדי לקבוע את מדיניות ברירת המחדל, אם כי ישנם אחרים כגון -L כדי לראות את המדיניות שהגדרנו, -F למחיקת מדיניות שנוצרה, -Z לאיפוס מוני בתים ומנות וכו '. אפשרות נוספת היא -A להוסיף מדיניות (לא ברירת המחדל), -אני להכניס כלל במיקום מסוים ו- -D למחוק כלל נתון. יהיו גם טיעונים נוספים שיצביעו על פרוטוקולים -p, יציאת מקור ספורט, יציאה ליציאת יעד, -i ממשק נכנס, -או ממשק יוצא ,- כתובת ה- IP של המקור וכתובת ה- IP של היעד.
יתר על כן קלט / פלט ייצג אם פּוֹלִיטִיקָה הוא מוחל על קלט INPUT, על פלט OUTPUT או שהוא הפניית תעבורה קדימה (ישנם אחרים כגון PREROUTING, POSTROUTING, אך לא נשתמש בהם). לבסוף, מה שכיניתי ACTION יכול לקחת את הערך ACCEPT אם אנו מקבלים, לדחות אם אנו דוחים או DROP אם אנו מחסלים. ההבדל בין DROP ל- REJECT הוא שכאשר חבילה נדחית עם REJECT, המכונה שמקורה היא תדע שהיא נדחתה, אך עם DROP היא פועלת בשקט והתוקף או המקור לא יידעו מה קרה, ולא יפעלו דע אם יש לנו חומת אש או שהחיבור פשוט נכשל. יש גם אחרים כמו LOG, אשר שולחים מעקב אחר הסיסלוג ...
לשינוי כללים, אנו יכולים לערוך את קובץ ה- iptables בעזרת עורך הטקסט המועדף עלינו, nano, gedit, ... או ליצור סקריפטים עם כללים (אם ברצונך לעקוף אותם, תוכל לעשות זאת על ידי הצבת # לפני השורה כך שהיא תהיה התעלם כהערה) דרך המסוף עם פקודות כפי שנסביר את זה כאן. בדביאן ובנגזרות תוכלו גם להשתמש בכלי iptables-save ו- iptables-שחזור ...
המדיניות הקיצונית ביותר היא לחסום הכל, כמעט כל התנועה, אבל זה ישאיר אותנו מבודדים, עם:
iptables -P INPUT DROP
לקבל את כל זה:
iptables -P INPUT ACCEPT
אם אנחנו רוצים את זה כל התנועה היוצאת מהצוות שלנו מתקבלת:
iptables -P OUTPUT ACEPT
La פעולה רדיקלית אחרת תהיה מחיקת כל המדיניות מ- iptables עם:
iptables -F
בוא נלך לכללים קונקרטיים יותרדמיין שיש לך שרת אינטרנט ולכן יש לאפשר את התנועה דרך יציאה 80:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
ואם בנוסף לכלל הקודם, אנו רוצים צוות עם iptables ניתן לראות רק מחשבים ברשת המשנה שלנו וזה לא מורגש על ידי רשת חיצונית:
iptables -A INPUT -p tcp -s 192.168.30.0/24 --dport 80 -j ACCEPT
בשורה הקודמת, מה שאנו אומרים ל- iptables הוא להוסיף כלל -A, כך שקלטות הקלט והפרוטוקול TCP, דרך יציאה 80, יתקבלו. עכשיו דמיין שאתה רוצה שאעשה זאת הגלישה באינטרנט נדחית למכונות מקומיות העוברות במכונה שמריצה iptables:
iptables -t filter -A FORWARD -i eth1 -o eth0 -p tcp --dport 80 DROP
אני חושב שהשימוש הוא פשוט, אם לוקחים בחשבון למה כל פרמטר של iptables נועד, אנחנו יכולים להוסיף כללים פשוטים. אתה יכול לעשות את כל הצירופים והחוקים שאנו מדמיינים ... כדי לא להאריך את עצמי יותר, פשוט הוסף עוד דבר אחד והוא שאם יופעל מחדש המכונה, המדיניות שנוצרה תימחק. הטבלאות מופעלות מחדש ויישארו כמו בעבר, לכן לאחר שתגדיר היטב את הכללים, אם אתה רוצה להפוך אותם לקבועים, עליך לגרום להם להפעיל מ /etc/rc.local או אם יש לך דביאן או נגזרות השתמש בכלים שקיבלו (iptables-save, iptables-שחזור ו- iptables-apply).
זהו המאמר הראשון שאני רואה ב- IPTABLES שלמרות שצפוף - דורש רמה בינונית של ידע - הוא הולך ישירות לדגן.
אני ממליץ לכולם להשתמש בו כ"מדריך לעיון מהיר "מכיוון שהוא מרוכז ומוסבר היטב. 8-)
הייתי רוצה שתדבר במאמר עתידי האם השינוי למערכת ברוב הפצות לינוקס משפיע בדרך כלשהי על האבטחה של לינוקס באופן כללי, ואם שינוי זה הוא לטובה או לרעה בעתיד והפצות לינוקס. אני גם רוצה לדעת מה ידוע על העתיד של devuan (דביאן ללא מערכת).
תודה רבה אתה מכין מאמרים טובים מאוד.
האם תוכל להכין מאמר המסביר את טבלת המנגל?
לחסום רק את פייסבוק?