Sudo

| --- | --- |
Lệnh sudo trong terminal
Phát triển bởi: Todd C. Miller

Phiên bản ổn định: 1.8.23    / 30 tháng 4 năm 2018; 6 năm trước (2018-04-30)
 
Kho mã nguồn: github.com/sudo-project/sudo  
Viết bằng: C
Hệ điều hành: tương tự Unix
Thể loại: Privilege authorization
Giấy phép: ISC-style
Website: www.sudo.ws
sudo (/ˈsuːduː/ or /ˈsuːdoʊ/) là một chương trình cho các hệ điều hành tương tự Unix cho phép người dùng chạy các chương trình với đặc quyền bảo mật của người dùng khác, và mặc định là superuser (thường là tài khoản root). Nó ban đầu được gọi là "superuser do" vì các phiên bản cũ hơn của sudo được thiết kế để chỉ chạy các lệnh như superuser. Tuy nhiên, các phiên bản sau này các phiên bản sau này đã thêm hỗ trợ cho các lệnh chạy không chỉ là superuser mà còn là những người dùng khác (bị hạn chế),  và do đó nó cũng thường được mở rộng thành "substitute user do".  Mặc dù trường hợp thứ hai phản ánh chức năng hiện tại của nó chính xác hơn, sudo vẫn thường được gọi là "superuser do" vì nó thường được sử dụng cho các tác vụ quản trị.
Không giống như lệnh tương tự su, người dùng phải, theo mặc định, cung cấp mật khẩu  của họ để xác thực, thay vì mật khẩu của người dùng đích. Sau khi xác thực và nếu file cấu hình, thường nằm ở /etc/sudoers, cho phép người dùng truy cập, hệ thống sẽ gọi ra lệnh được yêu cầu. File cấu hình cung cấp các quyền truy cập chi tiết, bao gồm chỉ cho phép các lệnh từ thiết bị đầu cuối gọi; yêu cầu mật khẩu cho mỗi người dùng hoặc nhóm; yêu cầu nhập lại mật khẩu mỗi lần hoặc không bao giờ yêu cầu mật khẩu cho một dòng lệnh cụ thể. Nó cũng có thể được cấu hình để cho phép các đối số truyền hoặc nhiều lệnh.
Root là người dùng hiện có trên mọi hệ thống Linux. Nói chính xác hơn, đó là một người dùng đặc biệt - siêu người dùng cao nhất!
root là người dùng duy nhất có đặc quyền thật sự để làm mọi thứ.
Trái ngược với hai loại tài khoản người dùng mà bạn có thể tạo (người dùng quản trị viên và người dùng bị hạn chế), root nó tồn tại theo mặc định và không thể đổi tên hoặc xóa. Thông thường, đăng nhập hoặc truy cập với tư cách root vốn bị tàn tật vì lý do bảo mật.
Bạn có thể nghĩ rằng người dùng quản trị của bạn là tài khoản mạnh nhất trên máy của bạn và có thể làm mọi thứ, nhưng điều đó là sai. Đơn giản hóa và nói chung, người dùng quản trị của bạn gần như ngang bằng với người dùng bị hạn chế quyền. Nó cũng chỉ có quyền ghi trong thư mục chính của chính nó và cũng có thể không thay đổi cài đặt trên toàn hệ thống. Tuy nhiên, người dùng quản trị có một đặc quyền đặc biệt và quan trọng. Vì đăng nhập với quyền root bị cấm trên Ubuntu theo mặc định, nên phải có một cách khác trở thành root trong một số trường hợp để có thể thực hiện các tác vụ quản trị quan trọng trên toàn hệ thống.
Lệnh sudo<- (viết tắt của "Super User DO ...")
Tài khoản người dùng quản trị viên có quyền sử dụng sudo lệnh để thực thi một lệnh duy nhất với tư cách là người chủ / với đặc quyền người chủ(root) để nhận quyền root tối thiểu (root được kiểm soát).
Nói đơn giản. Chỉ cần viết sudo trước mỗi lệnh đầu cuối cần các quyền đặc biệt nâng cao để chạy và thực thi lệnh đó. Nó sẽ hiển thị cho bạn lời nhắc và yêu cầu mật khẩu. root là tên người dùng hoặc tài khoản theo mặc định có quyền truy cập vào tất cả các lệnh và tệp trên Linux hoặc hệ điều hành giống Unix khác. Nó cũng được gọi là tài khoản gốc, người dùng gốc và siêu người dùng.
Vì vậy, sẽ có một số trường hợp phát sinh khi bạn sẽ phải thực thi với tư cách người dùng root để chạy các lệnh đó.
Theo mặc định, mật khẩu tài khoản gốc bị khóa trong Ubuntu. Điều này có nghĩa là bạn không thể đăng nhập với quyền root trực tiếp hoặc sử dụng lệnh su để trở thành người dùng root. Tuy nhiên, vì tài khoản gốc tồn tại về mặt lý thuyết nên vẫn có thể chạy các chương trình có đặc quyền cấp gốc.