22Aug

8 דרכים לצבוט ולהגדיר סודו על אובונטו

כמו רוב הדברים על לינוקס, הפקודה sudo מאוד להגדרה.אתה יכול לקבל פקודות ספציפיות sudo מבלי לבקש סיסמה, להגביל משתמשים ספציפיים רק פקודות שאושרו, פקודות יומן לרוץ עם sudo, ועוד.

התנהגות הפקודה של sudo נשלטת על ידי קובץ ה- /etc/ sudoers במערכת שלך.יש לערוך פקודה זו באמצעות הפקודה visudo, המבצעת בדיקת תחביר כדי להבטיח שלא תשבור את הקובץ בטעות.

ציין משתמשים עם הרשאות Sudo

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

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

הפוך את Sudo לשכוח את הסיסמה שלך

כברירת מחדל, sudo זוכר את הסיסמה שלך במשך 15 דקות לאחר הקלדתה.זו הסיבה שאתה רק צריך להקליד את הסיסמה פעם אחת בעת ביצוע פקודות מרובות עם sudo ברצף מהיר.אם אתה עומד לתת למישהו אחר להשתמש במחשב שלך ואתה רוצה sudo לבקש את הסיסמה כאשר הוא פועל הבא, לבצע את הפקודה הבאה ו sudo ישכח את הסיסמה שלך:

sudo-k

תמיד לבקש סיסמה

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

הגדרה זו, כמו הגדרות sudo אחרות, כלולה בקובץ ה- sudoers /etc/.הפעל את הפקודה visudo במסוף כדי לפתוח את הקובץ לעריכה:

sudo visudo

למרות שמו, פקודה זו היא ברירת המחדל לעורך ידידותי למשתמש החדש של ננו, במקום העורך המסורתי של vi ב- Ubuntu.

הוסף את השורה הבאה מתחת לשורות Defaults אחרות בקובץ:

Defaults timestamp_timeout = 0

הקש Ctrl + O כדי לשמור את הקובץ ולאחר מכן הקש Ctrl + X כדי לסגור את Nano. Sudo כעת תמיד לבקש ממך סיסמה.

שנה את פסק הזמן לסיסמא

כדי להגדיר פסק זמן לסיסמה אחרת - או יותר ארוך כמו 30 דקות או קצר יותר כמו 5 דקות - בצע את השלבים שלעיל אך השתמש בערך אחר עבור timestamp_timeout.המספר מתאים למספר הדקות ש- sudo יזכור עבורך.כדי לשמור על הסיסמה שלך במשך 5 דקות, הוסף את השורה הבאה:

ברירת מחדל timestamp_timeout = 5

לעולם לא לבקש סיסמה

אתה יכול גם סודו לא לבקש סיסמה - כל עוד אתה מחובר, כל פקודה לךקידומת עם sudo יפעל עם הרשאות שורש.כדי לעשות זאת, הוסף את השורה הבאה לקובץ sudoers שלך, שם המשתמש הוא שם המשתמש שלך:

שם משתמש ALL =( ALL) NOPASSWD: ALL

ניתן גם לשנות את קו sudo% - כלומר, הקו המאפשר לכל המשתמשים(משתמש גם בשם משתמשי מנהל) כדי להשתמש ב- sudo - כדי שכל משתמשי ה- Administrator לא ידרשו סיסמאות:

% sudo ALL =( ALL: ALL) NOPASSWD: ALL

פקודות ספציפיות ללא סיסמה

ניתן גם לציין פקודות ספציפיותלעולם לא תדרוש סיסמה כאשר אתה מפעיל עם sudo.במקום להשתמש ב "ALL" לאחר NOPASSWD לעיל, ציין את המיקום של הפקודות.לדוגמה, השורה הבאה תאפשר לחשבון המשתמש שלך להפעיל את פקודות ה- App-get and shutdown ללא סיסמה.

שם משתמש ALL =( ALL) NOPASSWD: /usr/bin/ apt-get, /sbin/ כיבוי

זה יכול להיות שימושי במיוחד בעת הפעלת פקודות ספציפיות עם sudo בסקריפט.

אפשר למשתמש להפעיל רק פקודות ספציפיות

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

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

standarduser ALL = /usr/bin/ apt-get, /sbin/ כיבוי

הפקודה הבאה תגיד לנו מה פקודות המשתמש יכול לרוץ עם sudo:

sudo -U standarduser -l

רישום Sudo Access

אתה יכול להיכנס כל גישה sudo על ידי הוספת השורה הבאה./var/log/ sudo הוא רק דוגמה;אתה יכול להשתמש בכל מיקום קובץ יומן שאתה אוהב.

defaults logfile = /var/log/ sudo

הצגת תוכן קובץ היומן באמצעות פקודה כמו זו:

sudo cat /var/log/ sudo

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