forked from ansible-lockdown/RHEL9-CIS
* container standards Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * logic on handlers Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * initial container ignore Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * tags and containder discovery Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * logic on auditd task Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * tags and crypto logic Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * distro update for rocky Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * system_is_container updates Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * ssh pkg check Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * logrotate pkg check Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * logic in container check Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * add pkg fact and audit conditionals Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * tidy up crypto step Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * Added missing tags Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * container vars file now a variable Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * added uid discovery and usage Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * Updated OS checks and conditionals Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * fixed empty become Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * change audit to include task Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * Added OS_specific vars Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * updated import/include Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * OS Specific vars Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * updated tags Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * updated changed_when Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * fixed UID logic Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * changed reboot var Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * changed skip_reboot var name Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * masked only Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * fix logic Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * remove debug update logic 6.2.8 Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * initial Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com> * removed CentOS Signed-off-by: Mark Bolwell <mark.bollyuk@gmail.com>
98 lines
2.9 KiB
YAML
98 lines
2.9 KiB
YAML
---
|
|
|
|
- name: "5.5.2 | L1 | PATCH | Ensure system accounts are secured"
|
|
block:
|
|
- name: "5.5.2 | L1 | Ensure system accounts are secured | Set nologin"
|
|
user:
|
|
name: "{{ item.id }}"
|
|
shell: /usr/sbin/nologin
|
|
with_items:
|
|
- "{{ rhel9cis_passwd }}"
|
|
when:
|
|
- item.id != "root"
|
|
- item.id != "sync"
|
|
- item.id != "shutdown"
|
|
- item.id != "halt"
|
|
- item.uid < 1000
|
|
- item.shell != " /bin/false"
|
|
- item.shell != " /usr/sbin/nologin"
|
|
|
|
- name: "5.5.2 | L1 | PATCH | Ensure system accounts are secured | Lock accounts"
|
|
user:
|
|
name: "{{ item.id }}"
|
|
password_lock: true
|
|
with_items:
|
|
- "{{ rhel9cis_passwd }}"
|
|
when:
|
|
- item.id != "halt"
|
|
- item.id != "shutdown"
|
|
- item.id != "sync"
|
|
- item.id != "root"
|
|
- min_int_uid | int >= item.uid
|
|
- item.shell != " /bin/false"
|
|
- item.shell != " /usr/sbin/nologin"
|
|
when:
|
|
- rhel9cis_rule_5_5_2
|
|
tags:
|
|
- level1-server
|
|
- level1-workstation
|
|
- patch
|
|
- rule_5.5.2
|
|
|
|
- name: "5.5.3 | L1 | PATCH | Ensure default user shell timeout is 900 seconds or less"
|
|
blockinfile:
|
|
create: true
|
|
mode: 0644
|
|
dest: "{{ item.dest }}"
|
|
state: "{{ item.state }}"
|
|
marker: "# {mark} ANSIBLE MANAGED"
|
|
block: |
|
|
# Set session timeout - CIS ID RHEL-09-5.4.5
|
|
TMOUT={{ rhel9cis_shell_session_timeout.timeout }}
|
|
export TMOUT
|
|
readonly TMOUT
|
|
with_items:
|
|
- { dest: "{{ rhel9cis_shell_session_timeout.file }}", state: present }
|
|
- { dest: /etc/profile, state: "{{ (rhel9cis_shell_session_timeout.file == '/etc/profile') | ternary('present', 'absent') }}" }
|
|
when:
|
|
- rhel9cis_rule_5_5_3
|
|
tags:
|
|
- level1-server
|
|
- level1-workstation
|
|
- patch
|
|
- rule_5.5.3
|
|
|
|
- name: "5.5.4 | L1 | PATCH | Ensure default group for the root account is GID 0"
|
|
shell: usermod -g 0 root
|
|
args:
|
|
warn: false
|
|
changed_when: false
|
|
failed_when: false
|
|
when:
|
|
- rhel9cis_rule_5_5_4
|
|
tags:
|
|
- level1-server
|
|
- level1-workstation
|
|
- patch
|
|
- rule_5.5.4
|
|
|
|
- name: "5.5.5 | L1 | PATCH | Ensure default user umask is 027 or more restrictive"
|
|
block:
|
|
- name: "5.5.5 | L1 | PATCH | Ensure default user umask is 027 or more restrictive | Set umask for /etc/bashrc"
|
|
replace:
|
|
path: /etc/bashrc
|
|
regexp: '(^\s+umask) 0[012][0-6]'
|
|
replace: '\1 027'
|
|
|
|
- name: "5.5.5 | L1 | PATCH | Ensure default user umask is 027 or more restrictive | Set umask for /etc/profile"
|
|
replace:
|
|
path: /etc/profile
|
|
regexp: '(^\s+umask) 0[012][0-6]'
|
|
replace: '\1 027'
|
|
when:
|
|
- rhel9cis_rule_5_5_5
|
|
tags:
|
|
- level1-server
|
|
- level1-workstation
|
|
- patch
|
|
- rule_5.5.5
|