4 lựa chọn thay thế sudo tốt nhất cho Linux đáng để xem xét

sudo có lẽ là một trong những lệnh Linux được sử dụng nhiều nhất. Nó cho phép bạn có được các đặc quyền quản trị hoặc nâng cao trên máy Linux.


Thông thường, bạn cần có các đặc quyền nâng cao để thực hiện các hành động như cài đặt phần mềm, quản lý dịch vụ và xóa các tệp hệ thống quan trọng. Nhưng bạn có biết có những lựa chọn thay thế cho lệnh sudo trên Linux không?


Tại sao thực thi các lệnh Linux với tư cách người dùng khác?

sudo là một lệnh rất quan trọng vì nó cho phép bạn thực thi các lệnh với đặc quyền siêu người dùng. Theo mặc định, người dùng không root thường có quyền truy cập hạn chế vào tài nguyên và tệp trên Linux.

Giới hạn quyền truy cập cho người dùng trên Linux là rất quan trọng vì những lý do sau:

  • Kiểm soát: Nó cho phép quản trị viên hoặc chủ sở hữu hệ thống cấp quyền truy cập cụ thể vào các tệp và chương trình nhất định. Điều này tốt cho sự ổn định của hệ thống, quyền riêng tư và hiệu suất tổng thể.
  • Bảo vệ: Việc giới hạn quyền truy cập vào một số phần của hệ thống sẽ ngăn việc vô tình xóa hoặc thay đổi hệ thống. Và nó cũng làm giảm bề mặt tấn công của hệ thống.

sudo hoạt động tốt và làm được nhiều hơn những gì hầu hết mọi người sử dụng nó. Thật không may, điều này làm cho nó rất cồng kềnh.

May mắn thay, giống như hầu hết mọi thứ trên Linux, có một số lựa chọn thay thế tuyệt vời cho lệnh sudo và đây là một số trong số đó.

1. pkexec

Lệnh pkexec (PolicyKit Executive) là triển khai giao diện người dùng của khung Chính sách, cung cấp một bộ quy tắc để cấp đặc quyền cho người dùng và quy trình.

pkexec cho phép bạn thực thi lệnh với các đặc quyền của người dùng hoặc vai trò khác, dựa trên các quy tắc được xác định trong một chính sách cụ thể.

Công cụ pkexec đã được cài đặt trên Ubuntu và các bản phân phối Linux chính khác. Trong trường hợp nó chưa được cài đặt, đây là cách cài đặt nó.

Trên các hệ thống dựa trên Debian, hãy chạy:

 sudo apt update && sudo apt install policykit-1 

Trên RHEL và các bản phân phối tương tự, hãy chạy:

 sudo dnf install policykit 

Trên các bản phân phối Linux dựa trên Arch, hãy sử dụng lệnh sau:

sudo sudo pacman -S policykit

Làm thế nào để sử dụng pkexec

Để sử dụng pkexec, trước tiên bạn phải chỉ định từ khóa pkexec, sau đó là lệnh bạn muốn thực thi, tiếp theo là bất kỳ đối số hoặc tùy chọn nào mà lệnh yêu cầu.

Ví dụ: để cài đặt chương trình Linux vui nhộn: coway trên hệ thống của bạn bằng cách sử dụng các đặc quyền của siêu người dùng, bạn sẽ sử dụng như sau:

 pkexec apt install cowsay 

Bạn cũng có thể chỉ định người dùng hoặc vai trò để đảm nhận các đặc quyền bằng cách sử dụng –người dùng tùy chọn theo sau là tên của người dùng hoặc vai trò. Ví dụ: để thực thi lệnh trước với đặc quyền của người dùng quản trị viên, bạn sẽ sử dụng lệnh sau:

 pkexec  

Ngoài ra, bạn cần nhập mật khẩu của người dùng hoặc vai trò mà bạn đã chỉ định trong lệnh. Nếu bạn không có các quyền cần thiết, bạn sẽ gặp lỗi.

2. làm

Lệnh doas có nguồn gốc từ hệ điều hành OpenBSD. Nó cho phép bạn thực thi một lệnh với các đặc quyền của một người dùng hoặc vai trò được chỉ định.

Nó rất giống với lệnh sudo, nhưng nó hiện đại, rất nhẹ và dễ cấu hình vì nó sử dụng các câu lệnh ngắn gọn và dễ đọc.

Nếu không, đây là cách bạn có thể cài đặt doas trên Linux.

Cấu hình doas trên Linux

không giống như sudopkexec các lệnh, bạn phải định cấu hình phiên bản doas mới được cài đặt trước khi bắt đầu sử dụng. Tệp cấu hình được đặt tại /etc/doas.conf. Nếu tệp cấu hình không tồn tại, hãy tạo một tệp bằng lệnh touch hoặc bất kỳ chương trình nào khác mà bạn chọn.

Để cung cấp cho người dùng đặc quyền siêu người dùng “mwizak” trên hệ thống của bạn, bạn có thể thêm dòng sau vào /etc/doas.conf tập tin:

 permit persist :mwizak as root 

Hãy nhớ thay thế người dùng “mwizak” trong lệnh nói trên bằng tên người dùng chính xác.

cấu hình lệnh doas trên hệ thống linux

Sau khi lưu các thay đổi cấu hình, hãy thử cài đặt coway bằng lệnh sau:

 doas apt install cowsay 

Để sử dụng người dùng khác, bạn có thể sử dụng -u cờ theo sau là tên người dùng. Nó tương tự như –người dùng cờ được sử dụng với lệnh pkexec.

Ví dụ: để chạy lệnh trước với tư cách quản trị viên hệ thống, bạn sẽ chạy:

 doas -u admin apt install cowsay 

3. su

Lệnh su là viết tắt của “người dùng chuyển đổi”. Nó cho phép bạn thực thi các lệnh với tư cách là người dùng không phải là người dùng hiện đang đăng nhập. Nó thường được sử dụng để chạy các lệnh yêu cầu quyền root, nhưng bạn có thể chạy bất kỳ lệnh nào khác bằng cách sử dụng su.

Chạy lệnh su mà không có bất kỳ đối số nào sẽ giả sử người dùng root, vì vậy bạn phải biết mật khẩu người dùng root để tiếp tục. Nếu bạn chuyển sang người dùng có tên john, bạn chỉ cần chạy lệnh:

 su john 

Nhập mật khẩu cho người dùng john. Để chuyển về người dùng ban đầu, chỉ cần chạy lệnh lối ra chỉ huy.

Xin lưu ý rằng việc chạy các lệnh với tư cách người dùng root thường không được khuyến nghị vì bạn không được nhắc nhập mật khẩu trên mỗi lệnh bạn chạy, điều này có thể dẫn đến hậu quả tai hại, chẳng hạn như vô tình xóa các tệp.

4. dzdo

dzdo là một công cụ dòng lệnh được sử dụng để thực thi các lệnh với đặc quyền của người dùng khác, chẳng hạn như siêu người dùng hoặc người dùng root. Nó tương tự như lệnh sudo, thường được sử dụng cho cùng một mục đích. Lệnh dzdo hầu hết có sẵn trên Oracle Linux.

Bạn có thể dùng -u cờ để chỉ định người dùng có đặc quyền mà bạn muốn sử dụng. Ví dụ, lệnh sau sẽ thực thi cập nhật apt-get lệnh với các đặc quyền của siêu người dùng (root):

 dzdo -u root apt-get update 

Hệ thống sẽ yêu cầu bạn nhập mật khẩu thích hợp để xác nhận rằng bạn có các đặc quyền cần thiết để chạy lệnh.

Sử dụng Điều khiển người dùng chính xác để tăng cường bảo mật trên Linux

sudo là một lệnh thường được sử dụng trên các hệ thống Linux cho phép người dùng thực thi một lệnh với các đặc quyền của người dùng root. Tùy thuộc vào nhu cầu của bạn, bạn có thể sử dụng bất kỳ lựa chọn thay thế sudo nào trong quy trình làm việc của mình.

Trên Linux, điều quan trọng là phải chỉ định các cấp độ truy cập thích hợp cho các tệp và thư mục để bảo mật tốt hơn.

Previous Post
Next Post

post written by: