Cho phép người dùng của một nhóm nhất định chạy lệnh mà không cần sudo


11

Tôi biết cách chỉnh sửa / etc / sudoers để tôi có thể chạy một lệnh như sudo mà không cần phải nhập mật khẩu của mình, tuy nhiên, có một cách cho phép một chương trình được chạy hoàn toàn mà không cần sudo, bởi tất cả người dùng của một nhóm. (Các chương trình tôi muốn chạy là "mount" và "umount").


HĐH của bạn là gì? Bạn đang cố gắn phân vùng NTFS, phân vùng EXT hoặc ổ đĩa quang?
nate

Câu trả lời:


13

Giả sử tôi muốn thêm một nhóm người dùng được phép chạy mountumountkhông có mật khẩu. Vì vậy, trước tiên tôi muốn thêm một nhóm gọi là "anyname"

sudo groupadd anyname

Tiếp theo chúng ta cần chỉnh sửa /etc/groupvà thêm người dùng

anyname:x:407:

sẽ có mặt, do đó nối thêm người dùng mà bạn muốn thêm người dùng được phân tách bằng dấu phẩy.

anyname:x:407:user1,user2,...

Bây giờ chúng ta cần cấu hình sudo để cho phép các thành viên của nhóm "anyname" thực sự gọi các lệnh mountumount.

Bạn chỉ cần thêm các dòng sau vào / etc / sudoers

%anyname ALL=NOPASSWD: /sbin/mount, /sbin/umount

Bây giờ sudo mountsẽ không hỏi mật khẩu nhưng vì lúc nào cũng đau khi gõ sudo, chúng ta có thể tránh nó bằng cách sau:

Tôi có thể tạo tập lệnh sau có tên "/ usr / bin / mount" (và tập lệnh tương tự cho umount)

#! /bin/sh
sudo /sbin/mount $*

Để đảm bảo an toàn hơn một chút, chúng tôi có thể muốn thay đổi quyền sở hữu các tập lệnh này thành nhóm "anyname".

chgrp anyname /usr/bin/mount /usr/bin/umount

và sau đó làm cho chúng chỉ thực thi được cho nhóm "anyname"

chmod g+x /usr/bin/mount  /usr/bin/umount

EDIT : Tùy thuộc vào hệ điều hành bạn đang sử dụng, vui lòng kiểm tra vị trí của lệnh mount và umount. Nó có thể nằm trong / bin / thay vì /sbin. Vì vậy, bạn có thể phải thực hiện các thay đổi cần thiết

QUAN TRỌNG : BTW không chạy tập lệnh trên các hệ thống dựa trên Arch nơi tất cả các thư mục bin được liên kết với nhau.


1
Cảm ơn. Tôi thực sự đã triển khai bằng cách sử dụng .bashrc toàn cầu, có chứa hàm gắn kết trông giống như sau: mount {sudo mount $ *}
w4etwetewtwet
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.