保护主Ansible用户

对Ansible主用户来说,似乎只有两种合理的方法:

  • 使用root
  • 使用NOPASSWD sudo访问另一个用户(例如, ansible

第一个选项是禁止使用,因为我不敢保持PermitRootLogin 。 所以,默认情况下,第二个选项似乎是要走的路。

我至less在/etc/ssh/sshd_config

 Match User ansible PasswordAuthentication No 

并通过使用authorized_keysfrom选项将密钥用法限制到Ansible主机:

 from="192.168.100/24" 

到目前为止,我的想法还有其他想法或问题吗?

这些措施,我使用的客户端,必须通过SSH远程pipe理(在我的情况下使用BackupPC而不是Ansible,但它的工作方式相同)。

如果你只使用ssh来pipe理客户端,而不是shell访问,那么它会提高安全性来添加

 AllowUsers ansible PasswordAuthentication no 

你可以有一个用户帐户,需要SUDO访问密码,并在运行时通过--ask-sudo-pass标志( -K )提供该值

 ansible-playbook -i inv/production -K playbook.yml 

有关更多详细信息,请参阅http://docs.ansible.com/playbooks_intro.html