Skip to content

Instantly share code, notes, and snippets.

@txomon
Created September 7, 2014 09:30
Show Gist options
  • Save txomon/a3afe985672358927406 to your computer and use it in GitHub Desktop.
Save txomon/a3afe985672358927406 to your computer and use it in GitHub Desktop.
Ansible user role for ssh authorized_keys management
{%- for user in users %}
{%- if user_groups | intersect(user.groups) %}
# {{ user.realname }}
{% for key in user.ssh_keys %}
{{ key.key }}
{% endfor %}
{%- endif %}
{%- endfor %}
---
users:
- name: txomon
realname: Javier Domingo Cansino
uid: 10000
ssh_keys:
- key: ssh-rsa <my-key>
groups:
- everyone
- sysadmin
- name: Test
realname: Test user
uid: 10001
ssh_keys:
- key: user-key
groups:
- everyone
- development
---
- name: Create the public ssh authorized_keys file
template: src=authorized_keys.j2 dest=/root/.ssh/authorized_keys
---
- hosts: all
user: root
vars:
- user_groups:
- sysadmin
roles:
- users
- hosts: others
user: root
vars:
- user_groups:
- development
roles:
- users
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment