סדרת RHCSA: איך לנהל משתמשים וקבוצות ב-RHEL 7 – חלק 3

ניהול שרת RHEL 7, כפי שזה קורה עם כל שרת Linux אחר, יחייב ממך לדעת כיצד להוסיף, לערוך, להשעות או למחוק חשבונות משתמשים, ולהעניק למשתמשים את ההרשאות הנדרשות לקבצים, ספריות ומשאבי מערכת אחרים כדי שיוכלו לבצע את המשימות שהוקצו להם.

RHCSA: User and Group Management – Part 3

ניהול חשבונות משתמשים

כדי להוסיף חשבון משתמש חדש לשרת RHEL 7, תוכל להריץ אחת משני הפקודות הבאות כששורש:

# adduser [new_account]
# useradd [new_account]

כאשר נוסף חשבון משתמש חדש, ברירת המחדל הבאות מבוצעות.

  1. הספרייה הביתית שלו/שלה נוצרת (/home/שם_משתמש אלא אם צוין אחרת).
  2. קבצים מוסתרים אלה .bash_logout, .bash_profile ו־.bashrc מועתקים לתוך ספריית הבית של המשתמש, וישמשו לספק משתנים סביבתיים להפעלת המשתמש שלו/שלה. תוכל לחקור כל אחד מהם לפרטים נוספים.
  3. A mail spool directory is created for the added user account.
  4. A group is created with the same name as the new user account.

סיכום החשבון המלא מאוחסן בקובץ /etc/passwd. קובץ זה מחזיק רשומה לכל חשבון משתמש במערכת ויש לו את הפורמט הבא (השדות מופרדים בפסיק):

[username]:[x]:[UID]:[GID]:[Comment]:[Home directory]:[Default shell]
  1. שני השדות הללו [שם_משתמש] ו־[הערה] הם ברורים מעצמם.
  2. השדה השני 'x' מציין כי החשבון מאובטח בסיסמה מוצלת (ב־/etc/shadow), שמשמשת להתחברות כ־[שם_משתמש].
  3. השדות [UID] ו־[GID] הם מספרים שלמים שמציינים את זיהוי המשתמש ואת זיהוי הקבוצה הראשית שלהם, בהתאם.

לבסוף,

  1. הַ[ספריית הבית] מציגה את המיקום המוחלט של ספריית הבית של [שם משתמש], ו
  2. [מקלט ברירת המחדל] הוא המקלט שמוקצה למשתמש זה כאשר הוא/היא נכנס/ת למערכת.

קובץ חשוב נוסף שעליך להכיר היטב הוא /etc/group, שם מידע קבוצתי מאוחסן. כפי שזהו גם במקרה של /etc/passwd, יש רשומה אחת לכל שורה ושדותיה מופרדים גם באמצעות נקודתיים:

[Group name]:[Group password]:[GID]:[Group members]

היכן,

  1. [שם הקבוצה] הוא שם הקבוצה.
  2. האם הקבוצה משתמשת בסיסמת קבוצה? (״x״ אומר לא).
  3. [GID]: זהה למה שב-/etc/passwd.
  4. [חברי הקבוצה]: רשימת משתמשים, מופרדים בפסיקים, שהם חברי כל קבוצה.

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

# usermod [options] [username]

קרא גם:
15 דוגמאות פקודת 'useradd'
15 דוגמאות פקודת 'usermod'

דוגמה 1: הגדרת תאריך תפוגה לחשבון

אם אתה עובד עבור חברה שיש לה מדיניות לאפשר חשבון לזמן מוגבל, או אם ברצונך להעניק גישה לזמן מוגבל, תוכל להשתמש בדגל --expiredate שנמצא אחרי תאריך בפורמט YYYY-MM-DD. כדי לוודא שהשינוי הוחל, תוכל להשוות את הפלט של

# chage -l [username]

לפני ואחרי עדכון תאריך תפוגה של החשבון, כפי שמוצג בתמונה הבאה.

Change User Account Information
דוגמה 2: הוספת המשתמש לקבוצות נוספות

בנוסף לקבוצה הראשית שנוצרת כאשר חשבון משתמש חדש מתווסף למערכת, ניתן להוסיף את המשתמש לקבוצות נוספות באמצעות האפשרויות המשולבות -aG, או –append –groups, שנמצאות אחרי רשימת הקבוצות המופרדת בפסיקים.

דוגמה 3: שינוי מיקום ברירת המחדל של ספריית הבית של המשתמש ו/או שינוי הקושי שלו

אם מסיבה כלשהי צריך לשנות את מיקום ברירת המחדל של ספריית הבית של המשתמש (מלבד /home/username), יהיה עליך להשתמש באפשרויות -d, או –home, שנמצאות אחרי נתיב המוחלט לספריית הבית החדשה.

אם משתמש רוצה להשתמש בקושי אחר מבש (לדוגמה, sh), שמוקצה כברירת מחדל, יש להשתמש ב־usermod עם הדגל –shell, שנמצא אחרי נתיב הקושי החדש.

דוגמה 4: הצגת הקבוצות שבהן המשתמש הוא חבר

לאחר שהוספת המשתמש לקבוצה נוספת, תוכל לוודא שהוא באמת שייך כעת לקבוצה(ות) כאלה:

# groups [username]
# id [username]

התמונה הבאה מתארת דוגמאות 2 עד 4:

Adding User to Supplementary Group

בדוגמה לעיל:

# usermod --append --groups gacanepa,users --home /tmp --shell /bin/sh tecmint

כדי להסיר משתמש מקבוצה, עליך להשאיר את המתג --append בפקודה לעיל ולרשום את הקבוצות שברצונך שהמשתמש ייכנס אליהן לאחר המתג --groups.

דוגמה 5: נעילת סיסמה לחסימת חשבון

כדי לנעול חשבון, עליך להשתמש באפשרות -L (אות קטנה L) או באפשרות –lock כדי לנעול את הסיסמה של המשתמש. זה ימנע מהמשתמש להיכנס.

דוגמה 6: שחרור סיסמה

כאשר תצטרך לאפשר מחדש למשתמש להיכנס לשרת שוב, עליך להשתמש באפשרות -U או באפשרות –unlock כדי לשחרר את הסיסמה של המשתמש שנחסמה מראש, כפי שנסבר ב-דוגמה 5 לעיל.

# usermod --unlock tecmint

התמונה הבאה ממחישה דוגמה 5 ו-6:

Lock Unlock User Account
דוגמה 7: מחיקת קבוצה או חשבון משתמש

כדי למחוק קבוצה, עליך להשתמש ב-groupdel, בעוד למחוק חשבון משתמש עליך להשתמש ב-userdel (הוסף את המתג –r אם ברצונך גם למחוק את תוכן ספריית הבית ואת תיקיית הדואר שלו):

# groupdel [group_name]        # Delete a group
# userdel -r [user_name]       # Remove user_name from the system, along with his/her home directory and mail spool

אם ישנם קבצים בבעלות של שם_קבוצה, הם לא יימחקו, אך בעל הקבוצה יוגדר ל-GID של הקבוצה שנמחקה.

Source:
https://www.tecmint.com/rhcsa-exam-manage-users-and-groups/