web-dev-qa-db-ja.com

プライマリAnsibleユーザーの保護

プライマリAnsibleユーザーにとって合理的なアプローチは2つしかないようです。

  • rootの使用
  • ansibleNOPASSWDアクセス権を持つ別のユーザー(例:Sudo)の使用

最初のオプションは、PermitRootLoginをオンにしておくことを考えているので、やめましょう。したがって、デフォルトでは、2番目のオプションが進むべき道のようです。

私は少なくとも/etc/ssh/sshd_configで考えていました:

Match User ansible
    PasswordAuthentication No

また、authorized_keysfromオプションを使用して、キーの使用をAnsibleホストに制限します。

from="192.168.100/24"

これまでの私の考えに関する他のアイデアや問題/懸念はありますか?

7

これらは、sshによってリモートで管理する必要があるクライアントに使用する手段です(私の場合、Ansibleの代わりにBackupPCを使用していますが、同じように機能します)。

シェルアクセスではなく、クライアントの管理にsshのみを使用している場合は、追加するセキュリティが向上します。

AllowUsers ansible
PasswordAuthentication no
3
Andrew Schulman

Sudoアクセスにパスワードを必要とするユーザーアカウントを作成し、実行時にansible-playbookの--ask-Sudo-passフラグ(-K)を介してその値を提供できます。

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

詳細については、 http://docs.ansible.com/playbooks_intro.html を参照してください。

0
ProfFalken