Phương pháp nào để sử dụng để cấp sudo


13

Sự khác biệt giữa việc thêm người dùng vào /etc/sudoersvà là usermod -a -G sudogì? Phương pháp nào nên được sử dụng để cấp sudo?


6
Đối với Ubuntu, bạn rất nên tránh chỉnh sửa /etc/sudoerstrong bất kỳ điều kiện nào. Thay vào đó thêm các đoạn cấu hình vào /etc/sudoers.dthư mục. Sử dụng thư mục mảnh giúp nâng cấp dễ dàng hơn kể từ khi bạn sửa đổi một conffile.
Zoredache

@Zoredache - điểm tuyệt vời. Bạn có quan tâm nếu tôi thêm nó vào câu trả lời của tôi? Tôi không muốn lấy tín dụng cho nó, nhưng mẹo này sẽ sống trong một câu trả lời ở đâu đó trong trường hợp các vị thần bình luận nuke điều này vì một số lý do.
EEAA

2
@EEAA, tôi cấp cho bạn quyền sử dụng ở trên và bất kỳ nhận xét nào tôi đăng để hợp nhất vào câu trả lời thực tế. Tôi thêm nhận xét vì tôi quá lười / bận để thêm câu trả lời đầy đủ, nhưng tôi không bận tâm nếu mọi người lấy ý kiến ​​của tôi và tích hợp chúng vào một câu trả lời hoàn chỉnh.
Zoredache

Câu trả lời:


19

Nếu bạn có thể tránh nó, đừng bao giờ cấp đặc quyền sudo cho người dùng cá nhân. Luôn cấp đặc quyền cho một nhóm và sau đó thêm người dùng vào nhóm đó.

Đối với các máy chủ dựa trên Ubuntu, thay vì thêm các dòng vào /etc/sudoers, hãy thêm các đoạn tệp cấu hình vào /etc/sudoers.d. Điều này linh hoạt hơn, dễ hiểu hơn, linh hoạt hơn khi đối mặt với các bản nâng cấp và hoạt động tốt hơn với các hệ thống được quản lý bởi các hệ thống quản lý cấu hình.

LƯU Ý: không bao giờ chỉnh sửa /etc/sudoerstrực tiếp. Thay vào đó, sử dụng visudo, sẽ thực hiện kiểm tra cú pháp trên các chỉnh sửa của bạn, ngăn bạn phá vỡ cấu hình sudo của bạn với cú pháp không hợp lệ.


Tại sao không thêm nhóm vào /etc/sudoers?
Flak DiNenno

1
@FlakDiNenno - đúng, đó chính xác là những gì tôi đề xuất.
EEAA

ahhh ... tôi nghĩ bạn đang đề cập đếnusermod -a -G sudo
Flak DiNenno

+1 cho cảnh báo về việc sử dụng visudo thay vì chỉnh sửa trực tiếp
Flak DiNenno

Điểm tốt về visudo. Một số người không nhận ra có một lý do /etc/sudoersđược đánh dấu là chỉ đọc.
ub3rst4r

9

Tôi chỉ tìm thấy mẩu tin nhỏ này ngoài kia ... có vẻ như bạn cần đặc biệt cẩn thận với việc sử dụng -Gtùy chọn trong Ubuntu, đặc biệt là -gtùy chọn kết hợp . Vì thế:

  1. Sử dụng usermod -aGđể thêm (các) người dùng vào một nhóm.
  2. Sau đó, như @EEAA đã đề xuất , hãy thêm nhóm vào tệp / etc / sudoers bằng $ sudovisudolệnh (tự động gọi trình soạn thảo đặc quyền với kiểm tra cú pháp).

Đây là thông tin về -aGtùy chọn trên Ubuntu, được lấy từ đây http://ubuntuforums.org/showthread.php?t=1240477 :

'Tôi đang đọc "Dòng lệnh Linux và Kinh thánh về kịch bản" của Wiley - và họ nói rằng usermod -G "nối thêm" một nhóm vào bất kỳ tài khoản người dùng nào bạn đang sửa đổi. Tôi thấy điều này là sai trong Ubuntu, không biết nó chỉ khác ở các bản phân phối khác hay lỗi chính tả trong sách. Nó xóa bạn khỏi MỌI nhóm khác mà bạn thuộc về, ngoại trừ nhóm người dùng mặc định của bạn (được sửa đổi bởi tùy chọn -g). Tôi quản lý để loại bỏ bản thân khỏi nhóm quản trị và không thể sudo bất cứ điều gì. Cảm ơn chúa vì chế độ phục hồi ... '

Tùy chọn chính xác là usermod -aG . Bài học kinh nghiệm...


2
downvoter có thể có phép lịch sự để cung cấp một số lời chỉ trích mang tính xây dựng ở đây. tia.
Flak DiNenno

Tôi không đánh giá thấp bạn, nhưng 'câu trả lời' của bạn, không thực sự trả lời câu hỏi được hỏi. Đây là một trang web hỏi đáp khá nghiêm ngặt, chúng tôi thường mong đợi câu trả lời trực tiếp giải quyết câu hỏi được hỏi. BTW, vâng tôi biết bạn phần nào giải quyết câu hỏi một chút, nhưng 'câu trả lời' của bạn có vẻ như hầu hết đều nói những gì EEAA đã nói, nhưng được cảnh báo về vấn đề kỳ quặc này.
Zoredache

@Zoredache cảm ơn vì đã dành thời gian. Không phải bước 1 & 2 rõ ràng đưa ra hướng dẫn cho "phương pháp ưa thích để cấp sudo"? Đó là những gì OP yêu cầu?
Flak DiNenno

1

Bạn không cho chúng tôi biết môi trường của bạn lớn như thế nào, nhưng nếu có nhiều hơn một máy, bạn cũng có thể muốn xem xét việc định cấu hình sudobằng LDAP thay thế cho việc chỉnh sửa sudoers cục bộ (thông qua visudohoặc sử dụng /etc/sudoers.dphương pháp phân đoạn).

Cấu hình LDAP là một cách được kiểm tra tốt để đảm bảo rằng nhiều máy có cùng sudocấu hình và thể hiện một môi trường thống nhất tốt đẹp (với sự quản lý trung tâm của một cơ chế ủy quyền quan trọng). Là một phần thưởng nếu bạn đã sử dụng LDAP (hoặc AD) để xác thực / ủy quyền trong môi trường của mình, bạn có thể tận dụng cơ sở hạ tầng hiện có (và nếu bạn không nên nghiêm túc xem xét nó - tập trung hóa có nhiều lợi ích).

Mọi người đã nói trong các câu trả lời khác về việc tạo các nhóm được ủy quyền vẫn còn - dễ dàng hơn khi bạn mở rộng quy mô để cấp đặc quyền cho một nhóm và quản lý thành viên nhóm hơn là xử lý quyền quản lý cho người dùng cá nhân.

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.