This is a translation of the original English documentation page. Help us make it better.

9 בדיקות SSH

סקירה כללית

בדיקות SSH מבוצעות כניטור ללא סוכן. סוכן Zabbix לא נדרש עבור בדיקות SSH.

כדי לבצע בדיקות SSH שרת Zabbix חייב להיות תחילה configured עם SSH2 תמיכה (libssh2 או libssh). ראה גם: דרישות.

::: שימו לב חשוב רק libssh נתמך החל מ-RHEL 8. :::

תצורה

אימות ביטוי סיסמה

בדיקות SSH מספקות שתי שיטות אימות, זוג משתמש/סיסמה ו מבוסס קובץ מפתח.

אם אינך מתכוון להשתמש במפתחות, אין תצורה נוספת נדרש, מלבד קישור libssh2/libssh ל- Zabbix, אם אתה בונה מהמקור.

אימות קובץ מפתח

כדי להשתמש באימות מבוסס מפתח עבור פריטי SSH, שינויים מסוימים ב- נדרשת תצורת שרת.

פתח את קובץ התצורה של שרת Zabbix (zabbix_server.conf) בתור root וחפש את השורה הבאה:

 # SSHKeyLocation=

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

 SSHKeyLocation=/home/zabbix/.ssh

שמור את הקובץ והפעל מחדש את zabbix_server לאחר מכן.

/home/zabbix הנה ספריית הבית של חשבון המשתמש zabbix ו-.ssh היא ספרייה שבה כברירת מחדל מפתחות ציבוריים ופרטיים יהיו להיווצר על ידי ssh-keygen הפקודה בתוך ספריית הבית.

בדרך כלל חבילות התקנה של שרת zabbix ממערכת הפעלה שונה הפצות יוצרות חשבון משתמש zabbix עם ספריית בית ב-not מקומות מאוד ידועים (באשר לחשבונות מערכת), למשל. ז. /var/lib/zabbix.

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

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

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

 # עצירת שירות zabbix-agent
        # שירות zabbix-שרת עצירה

כדי לשנות את מיקום ספריית הבית בניסיון להזיז אותו (אם זה קיים) יש לבצע פקודה:

 # usermod -m -d /home/zabbix zabbix

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

 # test -d /home/zabbix || mkdir /home/zabbix

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

 # chown zabbix:zabbix /home/zabbix
        # chmod 700 /home/zabbix

ניתן להתחיל שוב תהליכים שהופסקו בעבר:

 # התחלת שירות zabbix-agent
        # שירות zabbix-שרת התחל

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

# sudo -u zabbix ssh-keygen -t rsa
       יצירת זוג מפתחות RSA ציבורי/פרטי.
       הזן קובץ שבו יש לשמור את המפתח (/home/zabbix/.ssh/id_rsa):
       # <הזן את הספרייה שנוצרה '/home/zabbix/.ssh'>
       הזן ביטוי סיסמה (ריק ללא ביטוי סיסמה):
       הזן שוב את אותו משפט סיסמה:
       הזיהוי שלך נשמר ב-/home/zabbix/.ssh/id_rsa.
       המפתח הציבורי שלך נשמר ב- /home/zabbix/.ssh/id_rsa.pub.
       טביעת האצבע העיקרית היא:
       90:af:e4:c7:e3:f0:2e:5a:8d:ab:48:a2:0c:92:30:b9 zabbix@it0
       התמונה האקראית של המפתח היא:
       +--[ RSA 2048]----+
       | |
       | . |
       | o |
       | . o |
       |+ . S |
       |.+ o = |
       |ה . * = |
       |=o . ..* . |
       |... oo.o+ |
       +----------------+

הערה: מפתחות ציבוריים ופרטיים (id_rsa.pub ו-id_rsa בהתאמה) נוצרו כברירת מחדל בספריית /home/zabbix/.ssh שמתאים לתצורת שרת Zabbix SSHKeyLocation פָּרָמֶטֶר.

::: שימו לב חשוב סוגי מפתח אחרים מלבד "rsa" עשויים להיות נתמכים על ידי כלי ssh-keygen ושרתי SSH אך ייתכן שהם לא נתמכים על ידי libssh2, בשימוש על ידי Zabbix. :::

טופס תצורת מעטפת

שלב זה צריך להתבצע פעם אחת בלבד עבור כל מארח שיהיה מנוטר על ידי בדיקות SSH.

על ידי שימוש בפקודה הבאה ניתן להתקין את קובץ המפתח ציבורי על מארח מרוחק 10.10.10.10 כך שניתן לבצע בדיקות SSH עם חשבון שורש:

# sudo -u zabbix ssh-copy-id [email protected]
       לא ניתן לקבוע את האותנטיות של המארח '10.10.10.10 (10.10.10.10)'.
       טביעת אצבע של מפתח RSA היא 38:ba:f2:a4:b5:d9:8f:52:00:09:f7:1f:75:cc:0b:46.
       האם אתה בטוח שברצונך להמשיך להתחבר (כן/לא)?
       # כן
       אזהרה: הוספה לצמיתות '10.10.10.10' (RSA) לרשימת המארחים הידועים.
       הסיסמה של [email protected]:
       כעת נסה להיכנס למכונה, עם "ssh '[email protected]'", וצ'ק-אין:
            .ssh/authorized_keys
       כדי לוודא שלא הוספנו מפתחות נוספים שלא ציפיתם.

כעת ניתן לבדוק את הכניסה ל-SSH באמצעות המפתח הפרטי המוגדר כברירת מחדל (/home/zabbix/.ssh/id_rsa) עבור חשבון משתמש zabbix:

 # sudo -u zabbix ssh [email protected]

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

תצורת פריט

פקודות בפועל לביצוע חייבות להיות ממוקמות ב-Executed שדה script בתצורת הפריט.

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

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

השדות הדורשים מידע ספציפי עבור פריטי SSH הם:

פרמטר תיאור הערות
סוג בחר כאן סוכן SSH.
Key מפתח פריט ייחודי (למארח) בפורמט ssh.run[<תיאור קצר ייחודי>,<ip>,<port>,<קידוד>] נדרש <תיאור קצר ייחודי> וצריך להיות ייחודי עבור כל פריטי SSH לכל מארח
יציאת ברירת המחדל היא 22, לא היציאה שצוינה בממשק שאליו מוקצה פריט זה
שיטת אימות אחת מה"סיסמה" או "המפתח הציבורי"
שם משתמש שם משתמש לאימות במארח מרוחק.
חובה
קובץ מפתח ציבורי שם הקובץ של המפתח הציבורי אם שיטת האימות היא "מפתח ציבורי". נדרש דוגמה: id_rsa.pub - שם קובץ המפתח הציבורי המוגדר כברירת מחדל שנוצר על ידי פקודה ssh-keygen
קובץ מפתח פרטי שם הקובץ של המפתח הפרטי אם שיטת האימות היא "מפתח ציבורי". נדרש דוגמה: id_rsa - שם קובץ המפתח הפרטי המוגדר כברירת מחדל
סיסמה או
ביטוי סיסמה מפתח
סיסמה לאימות או
ביטוי סיסמה אם הוא שימש עבור המפתח הפרטי
השאר את השדה משפט סיסמה ריק אם לא נעשה שימוש בביטוי סיסמה
ראה גם בעיות ידועות לגבי שימוש בביטויי סיסמה
סקריפט מופעל פקודות מעטפת בוצעו באמצעות הפעלה מרחוק של SSH דוגמאות:
תאריך +%s
מצב mysql-server service
ps auxww | grep httpd | wc -l

::: שימו לב חשוב ספריית libssh2 עשויה לחתוך סקריפטים ניתנים להפעלה ל ~32kB. :::