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 sudoers
tệ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 su
cho người dùng và chạy, sudo -l
tô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 requiretty
và 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 sudoers
tệ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
?