我使用的是 Raspberry Pi,但我认为这个问题不是特定于 Raspberry Pi 操作系统的。
我仅使用 SSH 密钥以用户 pi 身份登录。
我有一个调用当前要求 user 的密码的脚本。sudo -v
pi
我想让这一步变得简单,所以最好让它根本不要求密码或有一个非常简单的密码(如"pi"
)。
但我当然不想通过 SSH 使用如此简单的密码公开用户帐户。
我已经有一个文件/etc/sudoers.d
包含pi ALL=(ALL) NOPASSWD: ALL
但它不会禁用 的密码问题sudo -v
。
我有什么选择?
sudo -l
编辑:按照评论中的要求输出:
pi@klipper:~ $ sudo -l
Matching Defaults entries for pi on klipper:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin, env_keep+=NO_AT_BRIDGE, env_keep+="http_proxy HTTP_PROXY", env_keep+="https_proxy HTTPS_PROXY", env_keep+="ftp_proxy FTP_PROXY",
env_keep+=RSYNC_PROXY, env_keep+="no_proxy NO_PROXY"
User pi may run the following commands on klipper:
(ALL : ALL) ALL
(ALL) NOPASSWD: ALL
删除(或者更好地注释掉)两个解除授权行中的第一个,
sudoers
适用于pi
:这个不需要的密码没有标志
NOPASSWD
,因此系统会提示您输入密码。(适用第一个匹配规则。)一般来说,我建议你打开两个shell。
sudo -s
首先使用以获得 root shell,并且在确认您的编辑没有阻止您使用 之前不要关闭它sudo
。使用第二个进行测试。始终用于visudo
编辑sudoers
文件。