为什么 sudo 默认接受密码而不是来自 stdin 的密码?

为什么 sudo 默认接受密码而不是来自 stdin 的密码?

我从之前的问题中了解到明确使用“sudo -S”的目的是什么?默认情况下 sudo 不接受来自 stdin 的密码。

这是为什么?是因为某些安全原因吗?

答案1

将输入通过管道传递到 sudo 通常很有用,例如无需将echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope0 解释为 sudo 密码。如果 sudo 接受来自标准输入的密码,那就行不通。

相关内容