sudoers và mặc định


11

Tôi cần cho phép người dùng chạy sudo không mật khẩu mà không cần tty.

Tôi có một tệp /etc/sudoers.d/với các lệnh và cài đặt đặc biệt tôi cần, vì tôi không thích chỉnh sửa trực tiếp sudoerstệp. Trong tập tin đó tôi có những điều sau đây:

# My list of commands that the user can run passwordless
myUser ALL=(ALL) NOPASSWD:SETENV: /foo/bar /foo/zaz
# My new defaults.
Defaults exempt_group = myUser
Defaults !env_reset,env_delete-=PATH
Defaults: myUser !requiretty

Tuy nhiên, khi tôi sucho người dùng và chạy, sudo -ltôi nhận được điều này trong mặc định:

 Matching Defaults entries for myUseron this host:
    requiretty, !visiblepw, always_set_home, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE LC_IDENTIFICATION
    LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY", secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin, exempt_group=myUser,
    !env_reset, env_delete-=PATH, !requiretty

Nơi tôi có thể thấy nó có đầu tiên requirettyvà cuối cùng !requiretty, cái không hoạt động. Tôi giả sử điều này xảy ra bởi vì trước tiên nó được phân tích cú pháp sudoerstệp bình thường , sau đó tệp tùy chỉnh của tôi dưới /etc/sudoers.d/.

Có cách nào để làm cho công việc này mà không cần chỉnh sửa bản gốc /etc/sudoers?

Câu trả lời:


4

Ngữ pháp cho Mặc định là thế này (xem man sudoers):

Default_Type ::= 'Defaults' |
                 'Defaults' '@' Host_List |
                 'Defaults' ':' User_List |
                 'Defaults' '!' Cmnd_List |
                 'Defaults' '>' Runas_List

User_List ::= User |
              User ',' User_List

Vì vậy trên dòng

Defaults: myUser !requiretty

loại bỏ khoảng trống giữa Defaults:myUser.

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.