Cho phép người dùng sử dụng sudo mà không cần mật khẩu


16

Trên môi trường VM hộp cát, tôi có một thiết lập Ubuntu Linux được tường lửa và không thể truy cập từ bên ngoài hệ thống cục bộ. Do đó, trên VM đó, tôi muốn cung cấp cho người dùng quản trị (mà tôi đã thiết lập) khả năng chạy bất cứ thứ gì với sudo và không cần mật khẩu.

Mặc dù tôi biết điều này không an toàn, nhưng VM này không phải lúc nào cũng được và yêu cầu mật mã cá nhân của tôi để chạy. Vì vậy, mặc dù điều này không "an toàn", có cách nào để có được chức năng mong muốn không?

Câu trả lời:


23

Từ người đàn ông sudoers :

   NOPASSWD and PASSWD

   By default, sudo requires that a user authenticate him or herself
   before running a command.  This behavior can be modified via the
   NOPASSWD tag.  Like a Runas_Spec, the NOPASSWD tag sets a default for
   the commands that follow it in the Cmnd_Spec_List.  Conversely, the
   PASSWD tag can be used to reverse things.  For example:

    ray  rushmore = NOPASSWD: /bin/kill, /bin/ls, /usr/bin/lprm

   would allow the user ray to run /bin/kill, /bin/ls, and /usr/bin/lprm
   as root on the machine rushmore without authenticating himself.

Một thẻ khác là ALL, để cho phép người dùng chạy bất kỳ lệnh nào trên bất kỳ máy chủ nào mà không cần mật khẩu:

ray ALL= NOPASSWD: ALL

2
Các tập tin cấu hình câu trả lời này được mô tả là /etc/sudoers. Bạn không chỉnh sửa tệp này như tệp cấu hình bình thường, thay vào đó bạn nên sử dụng visudolệnh (với quyền root).
paulhauner

1

Như bạn đã đề cập, bạn nên tắt dấu nhắc mật khẩu trừ khi hệ thống chạy trong một môi trường an toàn cụ thể.

Một giải pháp khả thi là lớp lót này mà tôi thấy dễ nhớ hơn tùy chọn NOPASSWD. Nhận đặc quyền quản trị và chạy

$ visudo

và thêm dòng sau

Mặc định: tên người dùng ! Xác thực

Điều này sẽ vô hiệu hóa hoàn toàn lời nhắc mật khẩu cho một người dùng cụ thể.

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.