40 lines
1.1 KiB
YAML
40 lines
1.1 KiB
YAML
---
|
|
- name: Add user | Debian based OS
|
|
user:
|
|
name: "{{ username }}"
|
|
groups: sudo,shadow
|
|
shell: /bin/bash
|
|
append: yes
|
|
generate_ssh_key: yes
|
|
ssh_key_bits: 4096
|
|
ssh_key_file: .ssh/id_rsa
|
|
when: ansible_os_family == "Debian"
|
|
|
|
- name: Add user | Redhat based OS
|
|
user:
|
|
name: "{{ username }}"
|
|
groups: wheel
|
|
shell: /bin/bash
|
|
append: yes
|
|
generate_ssh_key: yes
|
|
ssh_key_bits: 4096
|
|
ssh_key_file: .ssh/id_rsa
|
|
when: ansible_os_family == "RedHat"
|
|
|
|
- name: Sudo | add to sudoers file and validate
|
|
lineinfile:
|
|
dest: /etc/sudoers
|
|
state: present
|
|
regexp: '^{{ username }} '
|
|
# line: '{{username}} ALL=(ALL) NOPASSWD:ALL'
|
|
line: "{{ username }} ALL=(ALL) {{ 'NOPASSWD:' if ( default_sudo_nopass|d(true)|bool ) else '' }}ALL"
|
|
validate: 'visudo -cf %s'
|
|
environment:
|
|
PATH: /usr/sbin:/usr/local/sbin:/sbin
|
|
#environment fixes Redhat issue of hard-coded path to visudo
|
|
|
|
- name: SSH Keys | Add authorized key for ssh key authentication
|
|
authorized_key:
|
|
user: "{{ username }}"
|
|
state: present
|
|
key: "{{ lookup('file', lookup('env','HOME') + '/.ssh/id_rsa.pub') }}" |