当前位置: 首页 > 面试题库 >

Ansible:没有密码的sudo

许照
2023-03-14
问题内容

我想用不带sudo密码的用户sa1运行ansible:

第一次可以:

[root@centos1 cp]# ansible cent2 -m shell -a "sudo yum -y install httpd"

cent2 | SUCCESS | rc=0 >>

第二次失败:

[root@centos1 cp]# ansible cent2 -s -m yum -a "name=httpd state=absent"

cent2 | FAILED! => {
    "changed": false,
    "failed": true,
    "module_stderr": "",
    "module_stdout": "sudo: a password is required\r\n",
    "msg": "MODULE FAILURE",
    "parsed": false
}

请帮忙!


问题答案:

这不是您的服务器的配置。确保允许sudo的用户使用并且无需密码即可使用。

  1. 登录到服务器
  2. 使用以下命令打开sudoers文件 sudo visudo
  3. 确保您有这样的一行: centos ALL=(ALL) NOPASSWD:ALL
  4. centos您的用户替换
  5. 保存文件

您可以通过运行以下命令从服务器本身进行尝试:

sudo -u [yourusername] sudo echo "success"

如果这可行,那么它也应该可以正常运行。



 类似资料:
  • 如何以非交互式方式为Ansible指定sudo密码?

  • 我也尝试使用主机名(而不是IP地址),但是没有任何变化。有人帮忙吗?

  • 问题内容: 按照此处的说明进行操作,并重新创建了我以前错误创建的证书。就像我现在在服务器和客户端上看到的一样,情况发生了变化。 服务器是ClassFileServer.java,相应的客户端是SSLSocketClientWithClientAuth.java 有关使两端都能正常播放的任何提示,请注意,我使用的是localhost,因此我假设密码功能相同。 更新: 这是我用于生成文件的步骤,我可能

  • 我正在学习Spring安全。我使用在将用户密码持久化到数据库之前对其进行编码 代码: 然后在身份验证期间也使用它,用户得到了预期的身份验证。 然后,从方法中删除了,使用已编码密码的用户仍然能够成功地获得身份验证。 然后,我从和方法中删除了password encoder,并将持久化到数据库中(即没有密码编码),并尝试访问经过身份验证的页面,但我得到了, 但具有编码密码的用户仍然得到了身份验证,即使

  • 我试图在我的datacontracts中对我的datamembers密码进行哈希/盐析,但当我添加一个新的学生,然后获取该学生集合时,密码字段尚未进行哈希/盐析,它会返回我键入的内容? 有人能帮我修一下吗?