מערכת הלינוקס שלך היא פלטפורמה מעולה עבור שרתים ושולחנות עבודה. אך כמו כל מערכת מורכבת אחרת, חשוב מאוד להחזיק במעקב נכון כדי לשמור על המערכת שלך בשיאה. למרבה המזל, Sysdig נמצאת ממש כאן!
Sysdig היא כלי מעקב לינוקס מקיף שיכול לעקוב אחר המערכת שלך לאיומים, שגיאות, דפוסי שימוש ועוד רבות. ובמדריך זה, תלמדו להתקין את Sysdig תוך הדגשה של אפשרויות תצורה מסוימות לאורך הדרך על איך לעקוב טוב יותר אחר המערכת הלינוקס שלכם.
המשיכו לקרוא ואל תפספסו יותר 'התראה'!
דרישות מוקדמות
המדריך הזה יהיה הדגמה מעשית. אם תרצו להתאים, וודאו שיש לכם את הדברים הבאים.
- A Linux machine – This tutorial uses Ubuntu 20.04 LTS, but any Linux distributions will work.
- A non-root user with sudo privileges.
התקנת Sysdig בלינוקס
כלי שורת הפקודה של Sysdig זמין בדרך כלל ברוב ההפצות הלינוקס המודרניות, וניתן להתקין את Sysdig כמו כל חבילה אחרת שהתקנתם עד כה על המכונה שלכם.
1. פתח את הטרמינל שלך והרץ את הפקודה apt update
למטה כדי לוודא שיש לך את העדכונים האחרונים ממאגרי הפצה שלך. פקודה זו מעדכנת את רשימות החבילות במערכת שלך ויכולה לקחת מספר דקות להשלים.

2. לאחר מכן, הפעל את הפקודה apt install
למטה כדי להוריד (curl
) ולהתקין את החבילות הדרושות ל-Sysdig. פקודה זו גם מתקינה מודולים נוספים השימושיים מאוחר יותר במדריך זה כדלקמן:
gnupg
– ה-GNU Privacy Guard הוא כלי לתקשורת בטוחה ולאחסון נתונים. החבילה הזו מאפשרת הורדת מפתח GPG ציבורי של Sysdig כדי לוודא את תוקפיות החבילות של Sysdig.
software-properties-common
– מספק דרך מהירה לניהול מקורות התוכנה שלך דרך סביבת הפקודה או ממשק משתמש גרפי. חבילה זו מאפשרת לך להשתמש בפקודתadd-apt-repository
כדי להוסיף את מאגרי החבילות של Sysdig.
linux-headers-$(uname -r)
– מספק את הקבצים הנדרשים לבניית מודולי הליבה של הקרנל שלך. חבילה זו נדרשת משום שיתכן ותתקין את Sysdig על מכונה עם קרנל סטנדרטי ישן יותר.

3. הפעל את הפקודה curl
למטה כדי להוסיף את מפתח ה-GPG הציבורי של Sysdig (GPG
) למפתח ה-APT שלך. פקודה זו מאפשרת לך לאמת כי החבילות שהורדו מתוך sysdig.com הן תקפות ולא משונות.
תקבל הודעת OK לאחר שתוסיף את המפתח בהצלחה, כפי שמוצג למטה.

4. כעת, הפעל את הפקודה curl
למטה כדי להוריד בשקט (-s
) את מאגרי החבילות של Sysdig כקובץ draios.list
ולהוסיף אותו למערכת שלך. סיומת הקובץ .list
מספרת ל-APT שלך כי הקובץ הוא רשימת כתובות אינטרנט למאגרים, ולא רק כתובת URL אחת.
5. הפעל שוב את הפקודה apt update
למטה כדי להוריד את המאגרים החדשים של Sysdig ולעדכן את רשימות החבילות של ה-APT עם מידע המאגרים החדשים.
תראה את הפלט הבא אם ה-APT שלך מוגדר כראוי.

6. לאחר שהורדת את המאגרים של Sysdig, הפעל את הפקודה apt install
למטה כדי להתקין את sysdig במכונתך. פקודה זו מורידה ומתקינה את החבילה sysdig ואת החבילות התומכות שלה.

7. לבסוף, הרץ את הפקודה sysdig
למטה כדי לבדוק את גרסת Sysdig שהותקנה במכונתך.
מספר הגרסה מסייע בקביעה האם החבילה של Sysdig שלך מעודכנת. הגרסה גם נותנת תובנות האם השחרור של Sysdig משפיע על ביצועי המערכת או לא.
כפי שמוצג למטה, 0.28.0 היא הגרסה האחרונה של sysdig בכתיבה זו. מספר הגרסה שלך עשוי להיות שונה.

מעקב אחר מערכות Linux עם csysdig
כעת שיש לך את Sysdig מותקן, תוכל להשתמש ב-Sysdig כדי לראות מה קורה במערכת שלך. כלי הפקודה של Sysdig מגיע עם המון דגלים שיאפשרו לך לראות תצוגות שונות של המערכת ופעילותה. הדוגמה הבסיסית ביותר היא הפקודה csysdig
.
הפעל את הפקודה csysdig
בלעדי דגלים כדי לראות מה קורה כרגע במערכת שלך. הפקודה תציג לך את הפעילות של כל התהליכים הפעילים כרגע.
שים לב שעליך להפעיל פקודות Sysdig עם הרשאות
sudo
כדי לקבל גישה מלאה למערכת שלך. חלק מפעילות המערכת עשויה להיות מוסתרת כבררת מחדל ממשתמשים בלתי-רוט, כמו למשל פלט ממערכת הקובץ /proc. Sysdig גם דורשת הרשאותsudo
כדי לטעון אוטומטית את סמלי הלחמה הנדרשים לביצוע רוב התכלים שלה, כמו דוגמא, מודול הלחמה sysdig-probe
אם אתה נתקל בשגיאה הבאה, עליך להתקין מחדש את החבילה ncurses-term
. חבילת ncurses-term
יכולה להיאלץ להתעשת מחדש לאחר התקנה חדשה של Sysdig. Sysdig תלויה בחבילת ncurses-term
כדי לתמוך בממשק המשתמש ncurses שלה.

אם הפקודה csysdig
הצליחה, תקבל את הפלט הבא מאורגן לטאבים.
Description | |
PID | The Process ID that assigned by the Linux kernel. You use PIDs to identify and manage processes. |
PPID | The parent process ID of the process. You use PPID to trace the process back through its parent processes. Together, PID and PPID uniquely identify a process on your system. |
CPU | The percentage of CPU used by the application since it started can be seen on a scale from 0 to 100%, where 100% equals total CPU usage. You use CPU usage to find applications that are hogging system resources. |
USER | The name of the user that started the process. You use USER to find out who is executing a process you are interested in. |
TH | The name of the user that started the process. You use USER to find out who is executing a process you are interested in. |
VIRT | The total amount of virtual memory used by the application. You use VIRT to find applications that are hogging your system’s memory. |
RES | The number of resident memory pages a process has, as mapped to physical memory. You use RES to find applications that are hogging your system’s memory. |
FILE | The disk’s file descriptor used by the application. You use FILE to see which files are being read or written frequently, usually an indication of I/O activity. |
NET | The network socket descriptor used by the application. You use NET to see which network connections are being used by the process, and how much data is being transferred in bytes per second. |
Command | The network socket descriptor used by the application. You use NET to see which network connections are being used by the process, and how much data is being transferred in bytes per second. |
במבט ראשון, ממשק ה-csysdig נראה דומה לכלים לניטור כמו htop.

לחץ על F2 והכרטיסיות העליונות ישתנו כך שיציגו אוסף חדש של מידע מאורגן לכרטיסיות בצד שמאל, כפי שמוצג למטה.
סיסדיג קוראת לאלו "תצורות" משום שהן תצורות שונות של המערכת, מאורגנות לפי סוג המידע שהן מציגות, המציעות קונטקסט נוסף. ומכיוון שהתצורות האלו מבוססות על סקריפטי LUA, אתה יכול להתאים אישית את הסקריפטים כדי לחלץ מידע שונה מהמערכת ולשנות את התצורה כפי שתעדיף.

כברירת מחדל, סקריפטי ה-LUA ממוקמים בתיקיית /usr/share/sysdig/chisels, כפי שמוצג למטה.

ניטור תהליכי אכילת ה-CPU עם סקריפטי Sysdig Chisels
סיסדיג מציעה מספר סקריפטים מוכנים לשימוש שאוספים אוטומטית מידע מערכתי מסוים, הידועים בשם "סקריפטים". אולי אתה נתקל בביצוע איטי על המעבד שלך. אם כן, ביצוע הפקודה sysdig
עם סקריפט מסוים מאפשר לך לראות אילו יישומים/תהליכים משתמשים ברוב השימוש במעבד שלך.
1. הרץ את הפקודה sysdig
למטה כדי לרשום סקריפטים זמינים.
התמונה למטה מציגה רק כמה מסמיכים. אך ניתן למצוא וללמוד את רשימת הכלים המסמיכים הזמינים במלואם במסמך הרשמי תיעוד.
כלי המסמיכים של Sysdig הם גם סקריפטי LUA. ניתן ל יצור כלים מסמיכים משלך כדי למעקב אחר מידע מערכת מסוים או ליישם את התצוגה האישית שלך, אך נושא זה חורג מהטווח של המדריך הזה.

2. לאחר מכן, הפעל את הפקודה למטה כדי לראות את המידע המפורט (-i
) על כלי מסוים, כמו topprocs_cpu
בדוגמה זו.
ניתן לראות את כל המידע על כלי המסמך topprocs_cpu למטה, כולל שם הכלי, הקטגוריה שלו, ותיאור קצר של מה שהכלי עושה.
בדוגמה זו, כלי המסמך topprocs_cpu מסוגל מסיבת שימוש ב-CPU ומציג את התהליך העליון שהוגדר על ידי השימוש ב- CPU הגבוה ביותר.
לאחר שהבנת את פונקציונליות של כלי, תוכל להתחיל להשתמש בו.

3. הפעל את הפקודה sysdig
למטה, ציין את הכלי הנכון (-c topprocs_cpu
) כדי למצוא את היישומים שמשתמשים בכמות הגבוהה ביותר של CPU במערכת שלך.
Sysdig תפסיק את תהליכי המחשב בעלי השימוש הגבוה ביותר ב-CPU בדוגמה זו ותדפיס אותם בטרמינל. התהליך המבולבל ביותר ב-CPU יוצג בראש (sshd), מה שהופך אותם לקלים יותר למציאה.

מעקב אחר מידע מערכת מסונן
במקרים מסוימים, הפלט עשוי להיות עצום, וכך יוצר קושי בסינון מידע מערכתי בהתבסס על חפיסת מידע ספציפית. מאמינים, Sysdig מציעה אפשרות סינון עוצמתית המשתמשת בתחביר Lua כך שתוכל לבצע סינון יעיל.
נניח שאתה מחפש רק תהליכי sshd שתורמים לשימוש גבוה במעבד. אפשר להגדיר ביטוי סינון על פי PID או שם תהליך מסוים.
הפעל את הפקודה sysdig
למעלה כדי להציג רק את תהליך sshd
שמשתמש במעבד בכמויות רבות.
כפי שמוצג למטה, תקבל פלט מסונן בלבד מבלי לקבל מידע נוסף על תהליכים אחרים.
מהפלט, ניתן לקבל מידע נוסף אודות תהליך sshd, כמו למה התהליך משתמש במעבד או זכרון בכמויות רבות וכדומה.

יצירת קובץ לוג אירועים לניטור של המערכת שלך
אחת התכונות הנהדרות שSysdig מציעה הם קבצי לוג אירועים, המאפשרים לך לאסוף את כל המידע אודות פעולות של היישום או המערכת שלך לצורך ניתוח מאוחר יותר. קבצי לוג האירועים מספקים את אותו המידע כמו הפלט ממנהגי פקודת השורת פקודה בדוגמאות הקודמות אך משמרים את המידע בקובץ על הדיסק.
1. הפעל את הפקודה למעלה כדי ליצור קובץ (-w
) בשם ata.scap
בתיקיית הבית שלך, שבו Syslog יצטמין את כל פלטי sysdig
.
סיומת הקובץ .scap מאפשרת לשמור זרמי נתונים בפורמט טקסט נקרא.
2. לבצע את הפקודה ls -la
למטה כדי לרשום את כל הקבצים בתיקיית העבודה.
תשים לב לקובץ חדש בשם ata.scap בתיקיית הבית שלך, כפי שמוצג למטה.

3. לבסוף, הפעל את הפקודה למטה כדי ש-Sysdig יקרא (-r
) את קובץ יומן אירועי Sysdig (ata.scap
) וידפיס את ההתנהגות המערכת שלך כאשר אתה מתחבר ב-SSH אל השר שלך.

Conclusion
במאמר זה, למדת כיצד להתקין את Sysdig על Ubuntu 20.04 ולהשתמש ב-csysdig כדי לאסוף מידע על המערכת שלך, יישומים ומידע אבטחה. גם נגעת ביצירת קובץ לימון אירועים המאפשר לך לרשום את התנהגות המערכת שלך.
בנקודה זו, הבנת שיש לך כלים עוצמתיים כאשר מותקנת לך את Sysdig במערכת שלך. והם עוזרים לך להשיג יותר תובנות לגבי איך המערכת, היישומים והתשתית שלך פועלים.
עכשיו, עם הידע החדש שלך, למה לא ללמוד כיצד ל פענח את תעבורת ה-HTTP שלך עם Sysdig? או איך ל זהות בעיות בישום עם עקומות Sysdig?