עודכן לאחרונה ב
חשוב לדעת למי יש גישה למחשב הלינוקס שלך (ושליטה על הקבצים שלך), אבל אתה יכול בקלות לרשום משתמשים בלינוקס כדי לגלות. הנה איך.
ה מערכת הפעלה לינוקס מציע פקודות ליצירה ומחיקה של משתמשים ולבדוק אילו מהם מחוברים. עם זאת, אין פקודה לרשום משתמשים, מחוברים או לא, במערכת.
ובכל זאת, יש כמה דרכים לסיים את זה. אם אתה רוצה ללמוד כיצד לרשום משתמשים בלינוקס, עקוב אחר השלבים שלנו למטה.
מדוע עליך לבדוק את רשימת המשתמשים שלך בלינוקס
ישנן מספר סיבות שאולי תרצה לרשום משתמשים בלינוקס. זוהי תרגול טוב במונחים של מציאת ומחיקה של חשבונות שאינם בשימוש, למשל. מנקודת מבט אבטחה, זו גם דרך טובה לוודא שאין לך פולשים שיוצרים חשבונות משתמש.
זוהי משימה ניהולית שכדאי לך לעשות לפחות פעם בחודש. אם אתה מפעיל שרת לינוקס ארגוני, ייתכן שתרצה לעשות זאת לעתים קרובות יותר.
משתמשים הרשומים ב- /etc/passwd
לכל חשבונות המשתמש של שרת לינוקס שלך יש ערכים בקובץ /etc/passwd. כל שורה מייצגת משתמש, ויש לה שבעה שדות מופרדים בנקודתיים. השדות מספקים מידע על המשתמש.
- שם משתמש.
- סיסמה מוצפנת (איקס מציין שהסיסמה באמת נמצאת /etc/shadow)
- מספר זיהוי משתמש (UID).
- מספר זיהוי הקבוצה (GID) של המשתמש.
- השם המלא של המשתמש, אם רשום.
- ספריית הבית של המשתמש.
- מעטפת כניסה
אז זה מביא אותנו לדרך אחת לרשום את כל המשתמשים בלינוקס. אתה יכול להשתמש ב פָּחוּת פקודה כדי לראות את הקובץ כולו, מסך אחד בכל פעם.
פחות /etc/passwd.
אם אתה רוצה לבדוק אם משתמש מסוים קיים במערכת לינוקס, זה שימוש טוב לפקודה grep:
פחות passwd | grep jeff.
אם אינך מקבל פלט כלשהו, המשתמש הזה לא קיים בשרת לינוקס.
ובכל זאת, זה הרבה מידע. אתה יכול לקצץ אותו רק לשם המשתמש, לדוגמה, באמצעות ה- מביך אוֹ גזירה פקודות:
awk -F: '{print $1}' /etc/passwd. cut -d: -f1 /etc/passwd.
זה נוטה להיות הרבה יותר קל להבנה, אבל זה עדיין משאיר אותך לראות את כל חשבונות המשתמש מבוססי המערכת מעורבבים עם המשתמשים האנושיים שלך.
כיצד להשתמש ב-getent כדי לרשום משתמשים
פקודה נוספת, טוב, הוא הרבה יותר שימושי. הוא מציג ערכים מ כל מסד נתונים מוגדר בשרת שלך /etc/nsswitch.conf קוֹבֶץ. אחד מאלה הוא ה passwd מאגר מידע. להשתמש טוב כדי להציג רשימה של כל משתמשי לינוקס, זה עובד כך:
getent passwd
הפלט נראה בדיוק כמו השימוש ב- פָּחוּת הפקודה, אך מפרט את כל משתמשי LDAP במערכת לינוקס. שוב, שלנו מביך ו גזירה פקודות יכולות לעזור לראות רק את השדה הראשון, את שמות המשתמש.
אם אתה רוצה לבדוק אם משתמש מסוים קיים במערכת לינוקס, טוב עושה את זה קל:
getent passwd jeff.
שוב, שום פלט מהפקודה הזו לא אומר לך שהמשתמש לא קיים.
עוד שימוש נהדר עבור טוב הוא מגלה כמה חשבונות משתמש קיימים בשרת. זה נעשה על ידי צנרת טובהפלט של ה- שירותים פקודה, כך:
getent passwd | wc -l.
כפי שאתה יכול לראות, למערכת הלינוקס שלי יש בסך הכל 48 חשבונות. די מעניין, מכיוון שאני היחיד שמשתמש בזה, אבל זה רק מראה כמה חשבונות מערכת נוצרים בלינוקס.
נכש את משתמשי המערכת ממשתמשים רגילים
בעיני לינוקס, אין הבדל בין משתמש מערכת למשתמש אנושי. בכל פעם שאתה מתקין את מערכת ההפעלה, היא יוצרת מספר משתמשי מערכת. משתמשי מערכת אחרים נוצרים עבור חבילות שונות, כמו תוכנת אינטרנט או שירות דואר.
אז איך אתה יכול לרשום רק את המשתמשים הרגילים והאנושיים במערכת לינוקס? המפתח כאן הוא ההבנה שכאשר אתה יוצר משתמש רגיל, ה-UID שלו מוקצה בתוך טווח מסוים של מספרים. על ידי בדיקת ה /etc/login.defs קובץ, נוכל לקבוע את טווח ערכי ה-UID הזמינים עבור חשבונות משתמש רגילים.
grep -E '^UID_MIN|^UID_MAX' /etc/login.defs.
בהתבסס על הפלט, אני יודע שלמשתמשים רגילים צריך להיות UID בין 1000 ל-60000. מכאן אני יכול לבנות א טוב שאילתה שתציג רק משתמשים רגילים.
getent passwd {1000..60000}
לִזכּוֹר, טוב יופיע תלוי גם לאחר הצגת הפלט שלו. אתה יכול ללחוץ Ctrl-C כדי לסיים את התהליך, או לחכות עד שיסתיים. בדרך כלל לוקח פחות מ-15 שניות להשלים את החיפוש passwd מאגר מידע.
גרסה כללית יותר של פקודה זו לוקחת בחשבון שונה UID_MIN ו UID_MAX ערכים ששרתים שונים עשויים להשתמש בהם.
eval getent passwd {$(awk '/^UID_MIN/ {print $2}' /etc/login.defs)..$(awk '/^UID_MAX/ {print $2}' /etc/login.defs)}
בפקודה הזו, אנו מנצלים את היכולת של לינוקס לעשות מספר דברים בבת אחת. ה מביך פקודות קבל את UID_MIN ו UID_MAX ערכים, ולאחר מכן השתמש בהם בתוך טוב פקודה.
עכשיו, נניח שכל מה שאנחנו רוצים זה את שמות המשתמש. שוב, אנו מעבירים את הפלט שלנו דרך ה גזירה פקודה, כך:
eval getent passwd {$(awk '/^UID_MIN/ {print $2}' /etc/login.defs)..$(awk '/^UID_MAX/ {print $2}' /etc/login.defs)} | לחתוך -d: -f1.
פקודה זו עשויה להימשך 10 עד 15 שניות להשלמת, אז היו סבלניים.
ניהול יעיל של משתמשי לינוקס שלך
חשוב לעקוב אחר חשבונות המשתמש הקיימים במערכת הלינוקס שלך. כאשר אתה יודע שעובד עזב, תתבקש למחוק את חשבון המשתמש שלו. רישום תקופתי של משתמשי הלינוקס שלך יעזור לוודא שאתה תופס חשבונות שאולי נתקעו.
יחד עם זאת, הקפד לשמור על העליונה מדיניות אבטחת סיסמאות ועודד את המשתמשים שלך לעשות זאת לשנות את הסיסמאות שלהם באופן קבוע.