feat(ansible): update playbook to install ssh_locker service and create shared socket directory
This commit is contained in:
@@ -7,7 +7,8 @@
|
|||||||
tasks:
|
tasks:
|
||||||
- name: Set required facts
|
- name: Set required facts
|
||||||
ansible.builtin.set_fact:
|
ansible.builtin.set_fact:
|
||||||
systools_verion: " {{ systools_version | default('0.0.1') }}"
|
systools_version: "{{ systools_version | default('0.2.0') }}"
|
||||||
|
ssh_locker_timeout: "{{ ssh_locker_timeout | default('5m') }}"
|
||||||
tags: always
|
tags: always
|
||||||
|
|
||||||
- name: Download systools zip file
|
- name: Download systools zip file
|
||||||
@@ -17,6 +18,8 @@
|
|||||||
mode: '0644'
|
mode: '0644'
|
||||||
|
|
||||||
- name: Unpack systools zip file
|
- name: Unpack systools zip file
|
||||||
|
become: true
|
||||||
|
failed_when: false
|
||||||
ansible.builtin.unarchive:
|
ansible.builtin.unarchive:
|
||||||
src: /tmp/systools-v{{ systools_version }}-linux-amd64.zip
|
src: /tmp/systools-v{{ systools_version }}-linux-amd64.zip
|
||||||
dest: /usr/local/bin
|
dest: /usr/local/bin
|
||||||
@@ -31,6 +34,7 @@
|
|||||||
state: absent
|
state: absent
|
||||||
|
|
||||||
- name: Set root-only executable permissions for specific tools
|
- name: Set root-only executable permissions for specific tools
|
||||||
|
become: true
|
||||||
ansible.builtin.file:
|
ansible.builtin.file:
|
||||||
path: /usr/local/bin/{{ item }}
|
path: /usr/local/bin/{{ item }}
|
||||||
mode: '0700'
|
mode: '0700'
|
||||||
@@ -38,3 +42,39 @@
|
|||||||
- open_volume
|
- open_volume
|
||||||
- read_system_id
|
- read_system_id
|
||||||
- k8s_encryption_provider
|
- k8s_encryption_provider
|
||||||
|
|
||||||
|
- name: Create shared socket directory
|
||||||
|
become: true
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: /var/run/ssh_locker
|
||||||
|
state: directory
|
||||||
|
mode: '0777'
|
||||||
|
|
||||||
|
- name: Install ssh_locker service
|
||||||
|
become: true
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: ssh_locker.service.j2
|
||||||
|
dest: /etc/systemd/system/ssh_locker.service
|
||||||
|
mode: '0644'
|
||||||
|
notify:
|
||||||
|
- Reload systemd daemon
|
||||||
|
- Enable ssh_locker service
|
||||||
|
- Start ssh_locker service
|
||||||
|
|
||||||
|
handlers:
|
||||||
|
- name: Reload systemd daemon
|
||||||
|
become: true
|
||||||
|
ansible.builtin.systemd:
|
||||||
|
daemon_reload: true
|
||||||
|
|
||||||
|
- name: Enable ssh_locker service
|
||||||
|
become: true
|
||||||
|
ansible.builtin.systemd:
|
||||||
|
name: ssh_locker
|
||||||
|
enabled: true
|
||||||
|
|
||||||
|
- name: Start ssh_locker service
|
||||||
|
become: true
|
||||||
|
ansible.builtin.systemd:
|
||||||
|
name: ssh_locker
|
||||||
|
state: started
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=AWS Encryption Provider
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User={{ ansible_user }}
|
||||||
|
Environment="HOME=/home/{{ ansible_user }}"
|
||||||
|
ExecStart=/usr/local/bin/ssh_locker -s /var/run/ssh_locker/provision.sock -t {{ ssh_locker_timeout }}
|
||||||
|
Restart=on-failure
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
Reference in New Issue
Block a user