Sự khác biệt giữa nhóm 'sudo' và 'admin' là gì?


69

Tôi nhận thấy rằng hai nhóm được cấp quyền trông tương tự trong /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

Tài khoản người dùng của tôi với các đặc quyền "Quản trị hệ thống" nằm trong adminnhóm và dường như không có bất kỳ người dùng nào trong sudonhóm. Hai nhóm này để làm gì?

Câu trả lời:


55

Ubuntu 12.04 LTS trở lên

Quản trị viên được thêm vào sudonhóm, nhưng adminnhóm được hỗ trợ để tương thích ngược. Từ ghi chú phát hành :

Cho đến Ubuntu 11.10, quyền truy cập của quản trị viên bằng công cụ sudo đã được cấp thông qua adminnhóm Unix. Trong Ubuntu 12.04, quyền truy cập của quản trị viên sẽ được cấp thông qua sudonhóm. Điều này làm cho Ubuntu phù hợp hơn với việc triển khai ngược dòng và Debian. Với mục đích tương thích, adminnhóm sẽ tiếp tục cung cấp quyền truy cập sudo / admin trong 12.04.

Nó không được tạo khi bạn thực hiện cài đặt mới, mặc dù nó vẫn hiện diện nếu bạn nâng cấp từ các bản phân phối trước. Dù bằng cách nào, adminnhóm xuất hiện trong /etc/sudoerstập tin.

Xem chi tiết thực hiện và các tài liệu chính thức .


Mát mẻ. Cảm ơn! Bạn có thể vui lòng thêm một lời giải thích về sự khác biệt giữa ALL=(ALL)ALL=(ALL:ALL)?
wedi

Đừng
bận

21

Ubuntu 11.10 trở về trước

Theo mặc định, sudonhóm không được sử dụng trong Ubuntu :

  • người dùng được tạo trong quá trình cài đặt thuộc về adminnhóm, không phải sudo;
  • không có hướng dẫn hay hướng dẫn nào tôi từng đọc lời khuyên để sử dụng sudonhóm;
  • không ai cảm thấy cần phải sử dụng sudonhóm, bởi vì adminnhóm có thể làm tất cả một nhu cầu.

Ngược lại, trên Debian , nhóm được kích hoạt /etc/sudoerssudonhóm và không có adminnhóm. Nhưng người dùng được tạo trong khi cài đặt không được đặt trong nhóm đó, vì Debian đã rootkích hoạt tài khoản. Bạn nên làm điều đó một cách rõ ràng, nếu bạn muốn.

Ngoài ra, Fedora tương tự như Debian , đã rootkích hoạt và không có đặc quyền mặc định cho người dùng tạo trong khi cài đặt. Nhưng nhóm hành chính được cấu hình trong /etc/sudoerslà nhóm truyền thống hơn wheel.

Tóm lại, tôi nghĩ rằng không có sử dụng cho sudonhóm trong Ubuntu , đơn giản đó là di sản Debian .


Trên hệ thống Ubuntu của tôi, không có người dùng nào là thành viên của sudo: grep '^sudo:' /etc/group(vừa cài đặt). Không chắc chắn về Debian, tôi vừa thêm tên của mình vào /etc/sudoerstệp.
Lekensteyn

1
@Lekensteyn: như tôi đã nói, trên Debian bạn nên thêm một người dùng vào sudonhóm một cách rõ ràng để có được các đặc quyền quản trị : su -c "gpasswd -a $USER sudo", không cần phải sửa đổi /etc/sudoers. Hoặc bạn có thể sử dụng trực tiếp roottài khoản Debian .
enzotib

16

Không có sự khác biệt về bảo mật.

Cả hai đều có quyền truy cập không hạn chế 100% vào bất cứ thứ gì do HĐH cung cấp.

Sự khác biệt trong / etc / sudoers của bạn là (ALL)so với (ALL:ALL). Điều đầu tiên có nghĩa là bạn có thể chạy các lệnh như bất kỳ người dùng nào . Thứ hai - bạn có thể chạy lệnh như bất kỳ người dùngbất kỳ nhóm nào .

Cách hiển thị trong / etc / sudoers của bạn cả hai nhóm sẽ cần nhập mật khẩu của riêng họ để thực thi các lệnh với quyền root.

Cả hai có thể một vỏ gốc như thế này:

sudo su

9
Tôi không thể làm gì nếu không có bit "như bất kỳ nhóm nào"?
tudor

Nếu một chương trình chỉ được cho phép thực hiện bởi một nhóm cụ thể, thì người dùng với (ALL), không thuộc nhóm đó không thể thực thi lệnh đó. Cũng giống như ở đây , người dùng trong nhóm adminchứ không phải trong webusernhóm, không thể thực thi firefox.
Stam Kaly
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.