שאלה כיצד להגדיר סיסמה `sudo` על לינוקס?


איך יכול sudo ניתן להגדיר את ההגדרות ב- RHEL (Fedora, CentOS, וכו ') או הפצות של אובונטו? (אם זה אותו דבר על פני distros, זה אפילו טוב יותר!)

הגדרה: ציוד אישי ו / או מעבדה / הדרכה ללא כל חשש לגישה לא מורשית (כלומר, המכשירים נמצאים ברשתות שאינן ציבוריות, וכל המשתמשים / כל המשתמשים בטוחים לחלוטין, ותוכן המכשירים הוא "וניל רגיל") .


137
2017-07-15 04:09




התשובה מ- @Richipal היא actoleay אחד עובד הכי טוב עם המאמץ פחות: זה נראה חוקי sudoers חלים בסדר הפוך. - a1an
@ a1an כללים מוחלים באותו סדר כפי שמופיע בקובץ sudoers, וכאשר הם מוחלים הם סוג של לעקוף אחד את השני. לכן אם אני לא רוצה כלל לשנות בכלל הייתי שם את זה לקראת סוף הקובץ, כך שהוא מוחל על האחרון ולא ניתן לדרוס. - rsjethani


תשובות:


עריכה תודה על ההערה של מדינה: על פי דף האיש, אתה אמור להיות מסוגל לכתוב

ALL            ALL = (ALL) NOPASSWD: ALL

כדי לאפשר לכל המשתמשים להפעיל את כל הפקודות ללא סיסמה.


עבור הפניה, אני עוזב את התשובה הקודמת שלי:

אם תוסיף שורה של הטופס

%wheel         ALL = (ALL) NOPASSWD: ALL

ל /etc/sudoers (משתמש ב visudo הפקודה, כמובן), זה ייתן לכל אחד בקבוצה wheel הפעל את כל הפקודות מבלי לספק סיסמה. אז אני חושב שהפתרון הטוב ביותר הוא לשים את כל המשתמשים שלך בקבוצה כלשהי ולשים שורה כמו זה sudoers - ברור שאתה צריך להחליף wheel עם הקבוצה שבה אתה משתמש בפועל.

לחלופין, תוכל להגדיר כינוי משתמש,

User_Alias     EVERYONE = user1, user2, user3, ...

ולהשתמש בזה:

EVERYONE       ALL = (ALL) NOPASSWD: ALL

למרות שאתה צריך לעדכן /etc/sudoers בכל פעם שאתה מוסיף או מסיר משתמש.


154
2017-07-15 04:25



לא ALL עבודה במקום * כדי לציין את כל המשתמשים? ראה את הדוגמה ב sudoers(5). - medina
@medina: אז זה עושה, התגעגעתי כי כאשר קראתי את דף האיש. אני עורך. - David Z
תחת אובונטו, יצירת קובץ תחת /etc / sudoers.d ולשים את הערכים האלה אז זה יפסיק לך לערוך sudoers - Xetius
ב CentOS7, ערך זה קיים כברירת מחדל, רק העיר. - killjoy
רק הצליח להשתמש בו centOS ידי העתקה / הדבקה, נכשל בכל ניסיונות להקליד ישירות את התצורה. אבל התוצאה נראית זהה למעט רווחים ... - MUY Belgium


ניסיתי את הפתרונות לעיל ללא הועיל. הפתרון הבא עבד בשבילי ערוך את הקובץ / etc / sudoers והוסף את השורה הבאה

username ALL=(ALL) NOPASSWD: ALL

ה מפתח היא להוסיף אותו אחרי השורה האחרונה שאומרת

#includedir /etc/sudoers.d

81
2018-05-19 15:23



//, זה נראה כמו דרך טובה יותר לעשות את זה, במיוחד כאשר יישומים מסוימים יוסיף הכללים שלהם עבור משתמשי המערכת, Richipal. מידע נוסף על sudoers.d: sudo.ws/man/1.8.13/sudoers.man.html - Nathan Basanese
/ /, האם אתה מוכן להוסיף כמה אבחון מ Gearoid מרפי לתשובה שלך? - Nathan Basanese
תודה על ההבהרה הזו. הוספת אותו אחרי #includedir / שורת הפקודה / ccoers.d נראה חשוב CentOS 7 בעוד נראה לעבוד בסדר כדי לקבל את השורה קודם לכן בקובץ CentOS 6. - dmohr
הבעיה עם התעלמות NOPASSWD גלגל% נראה כי נובעים /etc/sudoers.d/USERNAME דוחה את אישור NOPASSWD של הקבוצה. החלת NOPASSWD ב /etc/sudoers.d/USERNAME פותר את הבעיה. - eel ghEEz


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

sudo -l

זה אמור לתת לך פלט כזה:

User gmurphy may run the following commands on this host:
    (root) NOPASSWD: ALL
    (ALL) ALL

זה מראה כי אני מוגדר עם הרשאות root אבל אני עדיין חלק מקבוצת (admin) מתאימים לכלל sudo אשר מצפה את הסיסמה ("ALL (ALL)"). זה הכריח את סודו להנחות אותי. הכלל המדובר היה המשתמשים admin:

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

ברגע שאני הגיב על זה, הייתי מסוגל sudo ללא סיסמה. אני מקווה שזה יועיל למישהו אחר.


24
2017-11-06 12:57



אההה, תודה! זה היה משגע אותי ... במקרה שלי, המשתמש שלי היה חלק מקבוצת "sudo" כמו גם "admin" (אשר יצרתי), ואת ההרשאות על כל היו בהתאמה לא נכונה, כפי שהיו במקרה שלך . עכשיו זה עובד! :) - neezer
תגובה שורה החוצה הוא מכשיר קהה. אתה עשוי להתעניין לשמוע כי "sudo קורא את הקובץ sudoers ומיישם הרשאות על מנת מלמעלה למטה.השורה האחרונה בקובץ יהיה להחליף כל סכסוך הקודם" על פי ubuntuforums.org/showthread.php?t=1132821 - וזה עבד בשבילי. - David J.


בתוך /etc/sudoers יש דוגמה של רק כי בחלק התחתון של הקובץ:

## Same thing without a password
# %wheel        ALL=(ALL)       NOPASSWD: ALL

9
2017-07-15 04:24



כי המדגם לא היה שלי - אבל תודה! - warren
כמו התשובה הקצרה שלך - Pei


יש דרך אחרת לעשות את זה בלי לגעת בקובץ הסודורים.

  • ערוך /etc/pam.d/su ו uncomment את השורה הבאה:

    auth           sufficient      pam_wheel.so trust use_uid
    
  • הוסף את המשתמש אל wheel קבוצה.


5
2017-07-15 08:39





יש דרך אחרת לעשות את זה בלי לגעת בקובץ הסודורים.

  • ערוך /etc/pam.d/sudo והוסף את השורה הבאה:

    מספיק pam_wheel.so אמון
  • הוסף את המשתמש אל wheel קבוצה.

Props כדי "topdog" ו "דניאל Serodio" עבור התשובה המקורית לגבי "su" ולא "sudo". השתמשתי בזה כאל הפניה והעתקתי ללא בושה, ותוקן, את עמדתם.


1
2017-09-11 00:36



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