Có gì khác nhau giữa root và sudo?


14

Một người dùng root có thể có tất cả các đặc quyền. Nhưng một người dùng bình thường có thể có quyền truy cập như root bằng lệnh su hoặc sudo và mật khẩu của riêng họ.

Vậy sự khác biệt là gì?

Câu trả lời:


7

Theo sutruyền thống, lệnh (và sudo) yêu cầu mật khẩu của root . Tuy nhiên, bạn có thể thiết lập sudođể người dùng thông thường có thể đạt được quyền root bằng mật khẩu của riêng họ bằng cách sửa đổi /etc/sudoers(tốt nhất là root, tốt nhất là với visudo).

Các bản phân phối Linux hiện đại cấu hình trước người dùng đầu tiên có thể sudo bằng mật khẩu của chính mình. Điều này ngăn người dùng vô tình cấu hình hệ thống và cho phép họ có toàn quyền kiểm soát mà không cần mật khẩu gốc riêng biệt.


2
Bạn nên sử dụng «visudo» thay vì chỉnh sửa thủ công / etc / sudoers - cú pháp sẽ được kiểm tra trước khi lưu có thể giúp bạn tiết kiệm một số rắc rối.
Nicolas

@Nicolas Cập nhật để bao gồm đó. Nhưng tôi muốn chỉ ra rằng tệp được viết tự động bởi các bản phân phối hiện đại.
phihag

3

Một người dùng bình thường chỉ có thể có quyền truy cập root bằng sudo nếu họ ở trong tệp sudoers (có nghĩa là họ đủ tin cậy để có được quyền quản trị theo yêu cầu). Trong một môi trường sản xuất, hầu như không ai nên là một sudoer.


3

Các sulệnh nó để thay đổi tạm thời một bản sắc cho bất kỳ người sử dụng trên một hệ thống và thực hiện nhiều chương trình với / cô / quyền của mình. Nó không phải là gốc. Nếu người dùng thực thi sukhông phải là root, anh ta phải nhập mật khẩu của người dùng mà anh ta muốn lấy danh tính.

Các sudolệnh là để thực hiện một lệnh với các điều khoản của bất kỳ người dùng. Nó không phải là gốc quá. Lệnh này rất có thể cấu hình và cung cấp một số loại điều khiển truy cập chính xác. Mật khẩu nhập là tùy chọn và cấu hình. Một số phân phối cho phép người dùng đầu tiên của hệ thống thực hiện với sudomọi thứ.


2

Để thêm vào các câu trả lời trên,

su user1với mật khẩu người dùng sẽ chuyển thông tin xác thực của bạn sang user1 cho đến khi bạn nhập thoát chỉ cần sugiả sử root theo mặc định.

sudonhư đã đề cập trong các câu trả lời khác, có thể được cấp cho người dùng đáng tin cậy và một bộ lệnh được phân phối lại. hơn nữa, sudocó thể được cấu hình để ghi nhật ký các lệnh được thực thi. Đây là một cách tốt để theo dõi lạm dụng đặc quyền.


1

Không phải tất cả người dùng bình thường đều có thể sử dụng sudo, họ phải ở trong tệp sudoers và bạn có thể kiểm soát những lệnh hoặc loại lệnh nào mà người dùng có thể thực thi. Ngoài ra, chỉ một số người dùng nhất định có thể sử dụng su để chuyển sang người dùng root. Thông thường bạn sẽ chỉ có quyền sudo cho một nhóm lệnh giới hạn và quyền su đầy đủ trong một khoảng thời gian giới hạn.


3
khá chắc chắn rằng tất cả người dùng có thể sử dụng su, họ sẽ chỉ cần mật khẩu của người dùng mà họ đang chuyển sang.
Người chơi Grady

1
Theo truyền thống, BSD yêu cầu một người phải ở trong nhóm bánh xe để cho phép sử dụng su để trở thành root. Điều này có thể được cấu hình trên Linux là tốt, nhưng không phải là tiêu chuẩn.
Jaap Eldering

-2

Chỉ người dùng có đặc quyền siêu người dùng mới có thể sudo hoặc su, người dùng bình thường không thể. Điều này được cấu hình trong / etc / sudoers, phải luôn được chỉnh sửa bằng visudo.

Lợi ích của hệ thống này là:

  1. Người dùng đặc quyền dễ dàng chạy các lệnh dưới dạng root khi cần,
  2. làm cho việc đoán tên người dùng gốc khó hơn (ví dụ: nếu một bot ssh đơn giản đã thử đăng nhập vào hệ thống rootsẽ là tên đăng nhập đầu tiên để đoán).
  3. Nhiều người dùng trên một hệ thống được chia sẻ có thể có quyền root mà không cần chia sẻ mật khẩu.
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.