ฉันจะอนุญาตให้ผู้ใช้ทั้งหมดเรียกใช้คำสั่งที่กำหนดผ่าน sudo ได้อย่างไร


25

ฉันรู้วิธีสร้างคำสั่งที่ผู้ใช้สามารถดำเนินการsudoได้ ฉันมีคำสั่งที่กำหนดฉันต้องการอนุญาตให้ผู้ใช้ใด ๆสามารถดำเนินการผ่านได้sudoโดยไม่ต้องป้อนรหัสผ่าน ฉันจะใส่อะไรในไฟล์ / etc / sudoers ของฉันเพื่อให้เกิดขึ้น


ขอบคุณที่ถามคำถามนี้ ฉันดูman sudoersครั้งเดียวและไม่พบคำตอบ ฉันดูman sudoersครั้งที่สองอย่างระมัดระวังมากขึ้น ฉันยังคงล้มเหลว TMI! จากนั้นขอบคุณคำตอบที่นี่ฉันตะโกนman sudoersและพบว่าทำไมสิ่งนี้ถึงได้ผล man sudoersดูเหมือนว่าคุณจำเป็นต้องรู้วิธีที่จะทำก่อนที่คุณจะสามารถเข้าใจ เฮ้อ!
Tino

คำตอบ:


24

หัวข้อเช่นนี้ใน sudoers ของคุณอาจเป็นสิ่งที่คุณต้องการ

Cmnd_Alias NAMEOFTHIS=/usr/bin/program
ALL ALL=NOPASSWD: NAMEOFTHIS

นั่นให้สิทธิ์การเข้าถึงเฉพาะกับชื่อผู้ใช้หรือไม่ มี wildcard ที่ฉันสามารถใช้แทนได้หรือไม่? ฉันต้องการให้ผู้ใช้ที่มีสิทธิ์ใด ๆ สามารถรันคำสั่งได้
Josh

จากนั้นใช้กลุ่มที่พวกเขาเป็นสมาชิกทั้งหมดของ
Broam

ขอบคุณ! ฉันสาบานว่าฉันพยายาม แต่ฉันลืมที่ว่างดังนั้นมันไม่ทำงาน!
Josh

1
หากไม่ใช่ผู้ใช้ทั้งหมดฉันจะเพิ่มกลุ่มเพียงเพราะนี่คือการเป็นสมาชิกของสิ่งที่คุณต้องการติดตาม - ใครสามารถเป็นแบบsudoนี้
Broam

1
จริงๆถ้าคุณไม่ต้องการที่จะเพิ่มกลุ่ม (เต้นฉันทำไมไม่) User_Alias SOMEUSERS = user1, user2และยังคงต้องการผู้ใช้แต่ละคนใช้
เบร็ทไรอัน

18

คุณอาจพิจารณาบิต SUID โปรแกรมบางอย่างจำเป็นต้องใช้สิทธิ์ root และใช้บิต SUID passwdเช่น

หาก sudo เป็นตัวเลือกที่ดีกว่าสำหรับคุณคุณสามารถใช้:

ALL ALL=NOPASSWD: /path/to/command

3
มันเป็นเชลล์สคริปต์ที่รีสตาร์ทเซิร์ฟเวอร์แคชในเครื่อง ... ดังนั้น SUID จะไม่ทำงานในกรณีนี้ใช่ไหม
Josh

Zoredache ทุบตีฉันในเวลาที่ฉันใช้เพื่อทดสอบวิธีแก้ปัญหาที่แนะนำ =)
Warner

ในขณะที่เขารบกวนฉันในการแชทพร้อมกันเพื่อโพสต์คำถามง่ายๆเช่นนี้ไม่น้อย!
Josh

1
@Josh: จากนั้นอย่าโพสต์คำถามง่าย ๆ :-)
Bart Silverstrim

2
@ Josh: ฟังดูเหมือนเป็นเรื่องจริง Multiharassitasking
Bart Silverstrim
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.