Adi*_*hya 6 sudo ssh-keys ansible-playbook
嗨我已经为Ansible编写了一本剧本来安装一些应用程序.我遇到麻烦,因为我必须以root身份运行所有东西,这不是一个好主意.
所以我创建了一个sudo用户并创建了一个用于身份验证的私钥.
有人可以帮我定义这个场景的hosts文件.
我当前的hosts文件是这样的:
[webserver]
web-01 ansible_ssh_host=192.168.0.11 ansible_ssh_user=root
Run Code Online (Sandbox Code Playgroud)
谢谢,
您的新主机文件将如下所示:
[webserver]
web-01 ansible_ssh_host=192.168.0.11 ansible_ssh_user=USERNAME ansible_ssh_private_key_file=/secure/mykey
Run Code Online (Sandbox Code Playgroud)
但是请在你的剧本中制作sudo:真如下:
---
- hosts: webserver
sudo: True
remote_user: USERNAME
gather_facts: True
# Run these tasks
tasks:
- name: Run this task.....
Run Code Online (Sandbox Code Playgroud)
一个重要的事情是你的sudo用户应该密码少,为了实现你应该编辑你的sudoer文件.如果您使用的是CentOS,请编辑/ etc/sudoers文件并添加以下行
USERNAME ALL=(ALL) NOPASSWD: ALL
Run Code Online (Sandbox Code Playgroud)
请在最后一行之后添加此行
#includedir /etc/sudoers.d
Run Code Online (Sandbox Code Playgroud)
如果您使用的是Ubuntu,请使用visudo命令查找并编辑以下行:
# Members of the admin group may gain root privileges
%sudo ALL=(ALL:ALL) NOPASSWD: ALL
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10422 次 |
| 最近记录: |