【问题标题】:sudo su - user -c still asks for original user passwordsudo su - user -c 仍然要求输入原始用户密码
【发布时间】:2018-06-22 14:59:23
【问题描述】:

我认为这可能是配置问题,但我正在寻找确认/建议。

从终端或脚本,如下:

user1$ sudo su - user2 -c "pwd"

提示我输入原始 user1 的密码。但是,以下内容:

user1$ sudo su - user2

user2$ pwd

user2$ /home/user2

工作得很好。

sudo -l 显示了 user1 切换到 user2 的正确权限,我对为什么通过 -c 参数传递命令失败感到有些困惑,但是单独执行每个步骤就可以了。

提前感谢您的建议。

【问题讨论】:

  • 我认为这道题不是编程题。

标签: linux bash rhel6


【解决方案1】:

来自man sudoers

runaspw
如果设置,sudo 将在运行命令或编辑文件时提示输入由 runas_default 选项(默认为 root)定义的用户密码,而不是调用用户的密码。此标志默认关闭。
... 目标
如果设置,sudo 将在运行命令或编辑文件时提示输入 -u 选项指定的用户密码(默认为 root)而不是调用用户的密码。请注意,此标志禁止使用未在 passwd 数据库中列出的 uid 作为 -u 选项的参数。 此标志默认关闭

您需要检查您的 /etc/sudoers 文件。添加到它:

Defaults targetpw

要让 sudo 始终要求目标使用密码。

【讨论】:

  • 请重新阅读问题。这不是要求输入密码的问题。原用户已经有权限切换到第二个用户。
猜你喜欢
  • 1970-01-01
  • 2013-08-09
  • 2014-02-01
  • 2019-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-02
  • 2018-09-22
相关资源
最近更新 更多