feat(baseline): add clean day0 baseline role (time, packages, hardening)
This commit is contained in:
12
ansible/roles/day0-baseline/defaults/main.yml
Normal file
12
ansible/roles/day0-baseline/defaults/main.yml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
# Timezone
|
||||||
|
timezone: "UTC"
|
||||||
|
|
||||||
|
# Packages to ensure are present
|
||||||
|
baseline_packages:
|
||||||
|
- chrony
|
||||||
|
- vim
|
||||||
|
- htop
|
||||||
|
- curl
|
||||||
|
- wget
|
||||||
|
- rsync
|
||||||
6
ansible/roles/day0-baseline/handlers/main.yml
Normal file
6
ansible/roles/day0-baseline/handlers/main.yml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
---
|
||||||
|
- name: Restart sshd
|
||||||
|
ansible.builtin.systemd:
|
||||||
|
name: sshd
|
||||||
|
state: restarted
|
||||||
|
become: true
|
||||||
32
ansible/roles/day0-baseline/tasks/main.yml
Normal file
32
ansible/roles/day0-baseline/tasks/main.yml
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
- name: Set timezone
|
||||||
|
community.general.timezone:
|
||||||
|
name: "{{ timezone }}"
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Enable and start chronyd
|
||||||
|
ansible.builtin.systemd:
|
||||||
|
name: chronyd
|
||||||
|
state: started
|
||||||
|
enabled: true
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Update all packages
|
||||||
|
ansible.builtin.package:
|
||||||
|
name: "*"
|
||||||
|
state: latest
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Install baseline packages
|
||||||
|
ansible.builtin.package:
|
||||||
|
name: "{{ baseline_packages }}"
|
||||||
|
state: present
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Disable root SSH login
|
||||||
|
ansible.builtin.lineinfile:
|
||||||
|
path: /etc/ssh/sshd_config
|
||||||
|
regexp: '^PermitRootLogin'
|
||||||
|
line: "PermitRootLogin no"
|
||||||
|
become: true
|
||||||
|
notify: Restart sshd
|
||||||
Reference in New Issue
Block a user