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?