อะไรคือความแตกต่างระหว่างกลุ่ม 'sudo' และ 'admin'


69

ฉันสังเกตเห็นว่าทั้งสองกลุ่มได้รับอนุญาตให้มีลักษณะคล้ายกันใน/etc/sudoers:

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

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

บัญชีผู้ใช้ของฉันที่มีสิทธิ์ "จัดการระบบ" อยู่ในadminกลุ่มและดูเหมือนจะไม่มีผู้ใช้ในsudoกลุ่ม สองกลุ่มนี้มีไว้ทำอะไร?

คำตอบ:


55

Ubuntu 12.04 LTS และใหม่กว่า

ผู้ดูแลระบบจะถูกเพิ่มในsudoกลุ่ม แต่adminกลุ่มได้รับการสนับสนุนสำหรับความเข้ากันได้แบบย้อนหลัง จากบันทึกประจำรุ่น :

จนถึง Ubuntu 11.10 การเข้าถึงผู้ดูแลระบบโดยใช้เครื่องมือ sudo นั้นได้รับอนุญาตผ่านadminกลุ่ม Unix ใน Ubuntu 12.04 การเข้าถึงของผู้ดูแลระบบจะได้รับผ่านsudoกลุ่ม สิ่งนี้ทำให้อูบุนตูสอดคล้องกับการใช้งานต้นน้ำและ Debian มากขึ้น เพื่อความเข้ากันได้adminกลุ่มจะยังคงให้การเข้าถึง sudo / administrator ใน 12.04

มันไม่ได้ถูกสร้างขึ้นเมื่อคุณทำการติดตั้งใหม่แม้ว่ามันจะยังคงอยู่ถ้าคุณอัพเกรดจากการกระจายก่อนหน้านี้ ไม่ว่าจะด้วยวิธีใดadminกลุ่มจะปรากฏใน/etc/sudoersไฟล์

ดูรายละเอียดการดำเนินงานและเอกสารที่เป็นทางการ


เย็น. ขอบคุณ! คุณช่วยเพิ่มคำอธิบายเกี่ยวกับความแตกต่างระหว่างALL=(ALL)และALL=(ALL:ALL)?
พุธที่

ไม่เป็นไรเพียงแค่เห็นคำตอบในคำตอบของอเล็กซานเดอร์ด้านล่าง ...
พุธที่

21

Ubuntu 11.10 และก่อนหน้า

โดยค่าเริ่มต้นsudoกลุ่มไม่ได้ใช้ในUbuntu :

  • ผู้ใช้ที่สร้างขึ้นระหว่างการติดตั้งเป็นของadminกลุ่มไม่ใช่sudo;
  • ไม่มีไกด์หรือคู่มือฉันเคยอ่านคำแนะนำในการใช้sudoกลุ่ม
  • ไม่มีใครรู้สึกว่าจำเป็นต้องใช้sudoกลุ่มเพราะadminกลุ่มสามารถทำทุกอย่างที่ต้องการ

ในทางกลับกันDebianกลุ่มที่เปิดใช้งานใน/etc/sudoersคือsudoกลุ่มและไม่มีadminกลุ่ม แต่ผู้ใช้สร้างขึ้นในระหว่างการติดตั้งไม่ได้ใส่ในกลุ่มนั้นเพราะDebianมีrootบัญชีที่เปิดใช้งาน คุณควรทำอย่างชัดเจนหากคุณต้องการ

นอกจากนี้Fedoraก็คล้ายกับDebianซึ่งมีการrootเปิดใช้งานและไม่มีสิทธิ์เริ่มต้นสำหรับผู้ใช้ที่สร้างขึ้นระหว่างการติดตั้ง แต่กลุ่มผู้ดูแลในการกำหนดค่าเป็นกลุ่มที่แบบดั้งเดิมมากขึ้น/etc/sudoerswheel

โดยสรุปฉันคิดว่าไม่มีประโยชน์สำหรับsudoกลุ่มในUbuntuเพียง แต่มันเป็นมรดกของเดเบียน


ในระบบ Ubuntu ของฉันไม่มีผู้ใช้ที่เป็นสมาชิกของsudo: grep '^sudo:' /etc/group(เพิ่งติดตั้ง) ไม่แน่ใจเกี่ยวกับ Debian ฉันเพิ่งเพิ่มชื่อของฉันลงใน/etc/sudoersไฟล์
Lekensteyn

1
@Lekensteyn: ที่ผมกล่าวว่าใน Debian คุณควรอย่างชัดเจนเพิ่มผู้ใช้ไปยังsudoกลุ่มที่จะได้รับสิทธิพิเศษในการบริหาร: ไม่จำเป็นต้องปรับเปลี่ยนsu -c "gpasswd -a $USER sudo" /etc/sudoersหรือคุณสามารถยืนด้วยวิธี Debian ของการใช้rootบัญชีโดยตรง
enzotib

16

ไม่มีความแตกต่างด้านความปลอดภัย

ทั้งคู่มีสิทธิ์เข้าถึงสิ่งใดก็ตามที่มีให้โดยระบบปฏิบัติการไม่ จำกัด 100%

ความแตกต่างในของคุณ / etc / sudoers เป็นVS(ALL) (ALL:ALL)คนแรกหมายความว่าคุณสามารถเรียกใช้คำสั่งเป็นผู้ใช้ใดที่สอง - คุณสามารถเรียกใช้คำสั่งเป็นผู้ใช้ใด ๆและเป็นกลุ่มใด

วิธีที่แสดงใน / etc / sudoers ของคุณทั้งสองกลุ่มจะต้องป้อนรหัสผ่านของตนเองเพื่อดำเนินการคำสั่งในฐานะรูท

ทั้งรูทเชลล์สามารถเป็นดังนี้:

sudo su

9
ฉันจะทำอะไรได้บ้างหากไม่มีบิต "เป็นกลุ่ม"
ทิวดอร์

หากโปรแกรมได้รับอนุญาตให้ดำเนินการโดยกลุ่มเฉพาะเท่านั้นผู้ใช้(ALL)ที่ไม่ได้อยู่ในกลุ่มนั้นจะไม่สามารถดำเนินการคำสั่งนั้นได้ เช่นเดียวกับที่นี่ผู้ใช้ที่อยู่ในกลุ่มadminและไม่ได้อยู่ในwebuserกลุ่มไม่สามารถดำเนินการfirefoxได้
Stam Kaly
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.