我正在使用ansible在所有服务器中部署sudoers文件,sudoers权限存储在中央存储库中,并通过本地安装在控制节点上的python库动态生成。
我尝试在控制节点上的libss文件夹上创建一个python脚本。但是现在不知道如何将下面代码的变量a
中生成的文件推送到远程主机到/ etc /中。 sudoers。
我认为创建模块或插件可以解决问题,但实际上不知道如何将下面的代码与ansible模块或插件集成。
from sudo_manager.objects import Host
import sudo_manager
h = Host.get_host('hostname')
a = sudo_manager.render_sudoers(h, 'sudoers.j2')
任何帮助将不胜感激。
答案 0 :(得分:0)
鉴于文件 sudoers.j2 是Jinja2模板,最好的选择是使用template模块。
- hosts: remote_hosts
tasks:
- template:
src: sudoers.j2
dest: /etc/sudoers
Ansible可能对escalate privilages使用sudo。注意不要将自己锁在外面。