108 lines
2.4 KiB
YAML
Executable File
108 lines
2.4 KiB
YAML
Executable File
---
|
|
- name: Get all ssh sessions
|
|
shell: ps -ef | grep sshd | grep -v root | grep -v "{{ ansible_user }}" | awk '{print $2}'
|
|
register: ssh_sessions
|
|
ignore_errors: true
|
|
|
|
- name: Terminate ssh sessions
|
|
shell: kill -9 {{ item }}
|
|
with_items: "{{ ssh_sessions.stdout_lines }}"
|
|
when: ssh_sessions is defined
|
|
ignore_errors: true
|
|
|
|
- name: "Create devops group"
|
|
ansible.builtin.group:
|
|
name: "devops"
|
|
state: present
|
|
|
|
- name: "get current users"
|
|
shell: "cat /etc/passwd | egrep -iv '(false|nologin|sync|root|dev2-iac)' | awk -F: '{print $1}'"
|
|
register: deleting_users
|
|
|
|
- name: "Delete users"
|
|
ansible.builtin.user:
|
|
name: "{{ item }}"
|
|
state: absent
|
|
remove: yes
|
|
with_items: "{{ deleting_users.stdout_lines }}"
|
|
when: item != ansible_user
|
|
ignore_errors: true
|
|
|
|
|
|
- name: "Create admin user"
|
|
ansible.builtin.user:
|
|
name: "{{ item.name }}"
|
|
group: "devops"
|
|
shell: "/bin/bash"
|
|
system: yes
|
|
state: present
|
|
with_items: "{{ admin_users }}"
|
|
when:
|
|
- item.name is defined
|
|
ignore_errors: true
|
|
|
|
- name: "admin user password change"
|
|
user:
|
|
name: "{{ item.name }}"
|
|
password: "{{ password | password_hash('sha512') }}"
|
|
state: present
|
|
with_items: "{{ admin_users }}"
|
|
when:
|
|
- item.name is defined
|
|
ignore_errors: true
|
|
|
|
- name: "Add admin user key"
|
|
authorized_key:
|
|
user: "{{ item.name }}"
|
|
state: present
|
|
key: "{{ item.key }}"
|
|
with_items: "{{ admin_users }}"
|
|
when:
|
|
- item.name is defined
|
|
- item.key is defined
|
|
- common_user == True
|
|
ignore_errors: true
|
|
|
|
|
|
- name: "Create common user"
|
|
ansible.builtin.user:
|
|
name: "{{ item.name }}"
|
|
group: "users"
|
|
shell: "/bin/bash"
|
|
system: yes
|
|
state: present
|
|
with_items: "{{ allow_users }}"
|
|
when:
|
|
- item.name is defined
|
|
- common_user == True
|
|
ignore_errors: true
|
|
|
|
- name: "Change common user password change"
|
|
user:
|
|
name: "{{ item.name }}"
|
|
password: "{{ password | password_hash('sha512') }}"
|
|
state: present
|
|
with_items: "{{ allow_users }}"
|
|
when:
|
|
- item.name is defined
|
|
- common_user == True
|
|
ignore_errors: true
|
|
|
|
- name: "Add common user key"
|
|
authorized_key:
|
|
user: "{{ item.name }}"
|
|
state: present
|
|
key: "{{ item.key }}"
|
|
with_items: "{{ allow_users }}"
|
|
when:
|
|
- item.name is defined
|
|
- item.key is defined
|
|
- common_user == True
|
|
ignore_errors: true
|
|
|
|
- name: "Setting sudoers allow users"
|
|
template:
|
|
src: sudoers_users.j2
|
|
dest: "/etc/sudoers.d/sudoers_users"
|
|
ignore_errors: true
|