You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ansible从无密码用户执行sudo时提示缺少sudo密码的问题解决求助

Ansible从无密码用户执行sudo时提示缺少sudo密码的问题解决求助

各位好,最近用Ansible的时候碰到了一个棘手的问题,想请大家帮忙分析下:

我有一个没有设置密码的用户my_user,希望Ansible以这个用户身份执行sudo操作,但不想修改sudoers文件添加NOPASSWD规则。结果Ansible一直报错:

FAILED! => {"msg": "Missing sudo password"}

具体环境说明:

  • 目标服务器上有两个用户:my_userroot,其中root设置了密码,my_user没有密码,通过SSH私钥登录
  • sudoers文件的配置是%sudo ALL=(ALL:ALL) ALL,我手动用my_user执行sudo命令时,完全不会弹出密码提示,直接就能成功执行

我使用的Playbook内容:

- name: VM deployment
  hosts: localhost
  gather_facts: false
  tasks:
    - name: "Add the VM as an ansible host"
      ansible.builtin.add_host:
        name: '{{ my_ip }}'
        groups:
          - my_vm
        ansible_ssh_private_key_file: "~/.ssh/id_rsa"
        ansible_user: 'my_user'

- name: "VM configuration"
  hosts: my_vm
  gather_facts: false
  tasks:
    - name: Install some packages
      ansible.builtin.apt:
        deb: "/tmp/somepackage.deb"

明明手动执行sudo没问题,为什么Ansible会提示缺少sudo密码呢?有没有不用修改sudoers文件的解决办法呀?

备注:内容来源于stack exchange,提问作者Fadeway

火山引擎 最新活动