Ansible 主机:
- CentOS 6(2.6.32-754.35.1.el6.x86_64)
- Python 2.6 版
- Ansible 2.6 版
测试虚拟机:
- CentOS 7(CentOS Linux 发行版 7.9.2009(核心)3.10.0-1160.11.1.el7.x86_64)
- Python 2.7.5
我如何将用户添加到测试服务器:
groupadd -g 590 www
groupadd -g 591 playbookuser
adduser -u 690 -g 591 playbookuser
usermod -a -G www playbookuser
mkdir -p /home/playbookuser/.ssh/
echo "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAA==">> /home/playbookuser/.ssh/authorized_keys
chmod 600 /home/playbookuser/.ssh/authorized_keys
chown -R playbookuser.playbookuser /home/playbookuser/
In /etc/sudoers addet "playbookuser ALL=(ALL) NOPASSWD:ALL"
然后我创建并运行剧本:
---
- hosts: all
become: yes
become_method: sudo
gather_facts: no
tasks:
- name: backup sshd config
copy:
src: /etc/ssh/sshd_config
dest: /etc/ssh/sshd_config.bak
backup: yes
Ansible 通过 ssh 连接到测试机器并执行用户 playbookuser 的命令然后 playbook 将无法运行,请问是什么问题?PS。如果您在控制台中使用 sudo 前缀从用户运行相同的命令,那么一切正常。
但我收到此错误:
MSG:
an error occurred while trying to read the file '/etc/ssh/sshd_config': [Errno 13] Permission denied: '/etc/ssh/sshd_config'
to retry, use: --limit @/var/lib/****/workspace/test_adm_deploy/174/backup_sshd%20_config.retry