alt*_*ern 1 users pam su non-root-user
如果我在root用户下运行包含的脚本su -m user service userservice start
,则不需要输入密码。但是当我在user
用户下运行它时,它总是询问密码。这真让我烦恼。出于安全原因是否应该询问密码?su -m user command
如果在以下环境下运行,有什么方法可以避免询问密码user
?
Edit1:su
我需要避免当前用户输入密码的原因是/etc/init.d/scripts
它对su -m user
我安装的许多服务都有声明。如果我重新启动应该在当前用户下运行的服务,每次输入密码似乎很愚蠢。实际上,我在重新启动某些服务时需要输入密码两次。我可能同意这是某些init.d 脚本的一个功能,我需要做的就是稍微调整源代码,但我认为它可能会在级别上以某种方式修复,su
以避免更改 init.d 脚本源代码。
是的,安全是原因,不,su
没有办法规避这一点。但是sudo
,它可以用于您想要的用途,并且它有一个配置文件,您可以在其中禁用输入密码的需要。
它还允许进行复杂的配置,以便您可以仅对非常特定的命令禁用密码,从而不会完全破坏安全性。
su
主要使用 pam 进行身份验证,您可以修改/etc/pam.d/su
并添加一行
auth sufficient pam_succeed_if user = <put username here> quiet
Run Code Online (Sandbox Code Playgroud)
su
添加该行后,当以指定用户身份运行时,您不必输入密码。