Ansible Role to harden (Debian) Linux systems.
Go to file
2022-03-22 23:16:42 +01:00
defaults ADD: initial commit 2022-03-19 15:42:43 +01:00
handlers ADD: initial commit 2022-03-19 15:42:43 +01:00
tasks FIX: prevent bpf hardening on kernels < 5.8 2022-03-22 23:16:42 +01:00
templates ADD: initial commit 2022-03-19 15:42:43 +01:00
LICENSE ADD: initial commit 2022-03-19 15:42:43 +01:00
README.md ADD: initial commit 2022-03-19 15:42:43 +01:00

Basic Hardening Ansible Script

Maintainer

Description

Some basic Security Hardening plays using Ansible

Hardening Features

  • create an issue and issue.net from the provided template
  • disable root login for ssh
  • set maximum number of concurrent alive ssh client sessions
  • set maximum number of SSH sessions
  • set ssh compression to delayed
  • set ssh maximum number of authentication retries
  • disable ssh TCP keep alive
  • disable X11 forwarding
  • enable SSH banner
  • default umask in login.defs
  • setup minimum password age in login.defs
  • setup maximum password age in login.defs
  • enable spoof protection
  • enable syn cookies
  • disable ICMP redirects
  • enable kernel address space layout randomization (ASLR)
  • install and enable fail2ban
  • install and enable rkhunter
  • install per user temp dirs
  • install debsums for verifying package integrity
  • install the debsecan tool
  • install lynis
  • install usbguard
  • disable core dumps
  • disable setuid applications core dumps
  • disable kernel kernel core dumps
  • set pam maxlogins
  • set pam nproc
  • Disallow opening files in world writeable sticky directories
  • Disallow opening fifos in world writeable sticky directories
  • Protect hardlinks
  • Protect symlinks
  • Disallow bpf loading for normal users
  • harden bpf jit compilter

Usage

Clone this repository into the roles folder of your playbook and add the role

Available variables used in your host repository can be found in defaults/main.yml.

LICENSE

GPLv3