Commit graph

243 commits

Author SHA1 Message Date
rndmh3ro
468e4674b8 debian 9's nginx doesnt support tls1.3
while this could be better solved by checking what nginx version is used, debian9 is eol'd in 4 months. if there will be again a need to check for nginx versions, we'll add it then

Signed-off-by: rndmh3ro <github@gumpri.ch>
2022-02-21 10:02:54 +01:00
Sebastian Gumprich
2ba40b0891
move sysctls to debian specific vars (#524)
* fix ansible-lint issue

https://github.com/ansible-community/ansible-lint/issues/1795
Signed-off-by: rndmh3ro <github@gumpri.ch>

* move 2 sysctls to debian specific

Signed-off-by: rndmh3ro <github@gumpri.ch>

* fix ansible-lint issue

https://github.com/ansible-community/ansible-lint/issues/1795
Signed-off-by: rndmh3ro <github@gumpri.ch>

* add arch linux sysctls

* simplify sysctl settings

Signed-off-by: rndmh3ro <github@gumpri.ch>

* ove overwrite to the bottom to let it acutally overwrite something

Signed-off-by: rndmh3ro <github@gumpri.ch>

* fix typo

Signed-off-by: rndmh3ro <github@gumpri.ch>
2022-02-18 15:30:32 +01:00
lbayerlein
1a97c6cf87
new feautre tmout in a new pr (#516)
Signed-off-by: Ludwig Bayerlein <bayerlein@bayerlein-networks.com>

Co-authored-by: Ludwig Bayerlein <bayerlein@bayerlein-networks.com>
2021-12-16 11:39:24 +01:00
Sebastian Gumprich
8f22ce788c
Feature coredump (#513)
* restructure limits-tasks

* disable coredumps in tests

* use notify-task for systemd-reload

Signed-off-by: rndmh3ro <github@gumpri.ch>

* add notify to another task

Signed-off-by: rndmh3ro <github@gumpri.ch>

* rm obsolete task and rename handler

Signed-off-by: rndmh3ro <github@gumpri.ch>
2021-12-10 22:10:14 +01:00
lbayerlein
bb8e3e375e
add feature to disable coredump to limit task (#511)
Signed-off-by: Ludwig Bayerlein <bayerlein@bayerlein-networks.com>

Co-authored-by: Ludwig Bayerlein <bayerlein@bayerlein-networks.com>
2021-12-08 14:25:49 +01:00
alegrey91
8805d9c14a fix: change hidepid mount task state to mounted 2021-11-29 22:37:21 +01:00
schurzi
ad43f908df
prettify nginx options (#509)
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2021-11-29 10:25:43 +01:00
schurzi
cb3574ed56
Merge pull request #501 from ksaadDE/patch-3
Updated dh_params to 4096
2021-11-28 11:38:39 +01:00
duffn
1d25d4185c
Update nginx_add_header README to match default (#506)
Signed-off-by: Nicholas Duffy <3457341+duffn@users.noreply.github.com>
2021-11-26 11:31:47 +01:00
tekicat
88893a5d4a
Fix duplicate sysctl config (#505)
Signed-off-by: tekicat <tekicat@amibee.com>
Signed-off-by: gk <ganesh.jayachandran@revolut.com>
Signed-off-by: Tekicat <tekicat@amibee.com>
2021-11-26 11:30:50 +01:00
Karim
f84ff572ac
Updated dh_params to 4096
Updated dh_params to 4096
2021-11-15 19:02:59 +00:00
Karim
96d6b47912 Update main.yml
TLSv1.3 should be supported (+security) and soon as possible should be TLSv1.2 EOL.
2021-11-15 19:23:47 +01:00
René Scheibe
bbe4ce16a1
Add whitelist option for yum repository files (#487)
Files in this whitelist should not be altered.

Currently this is only relevant for enforcing the gpg check.

Signed-off-by: René Scheibe <rene.scheibe@gmail.com>
2021-11-07 11:56:59 +01:00
lbayerlein
1bf31a197b
disable ctrl-alt-del key combination (#496)
* new function to disable ctrl-alt-del to avooid reboot virtual machines f.e.

Signed-off-by: Ludwig Bayerlein <bayerlein@bayerlein-networks.com>

* fix variable documentation for ctrlaltdel

Signed-off-by: Ludwig Bayerlein <bayerlein@bayerlein-networks.com>

* added ctrlaltdel variable for molecule

Signed-off-by: Ludwig Bayerlein <bayerlein@bayerlein-networks.com>

* optimize ctrlaltdel function with a 'when' query. thanks to rndmh3ro

Signed-off-by: Ludwig Bayerlein <bayerlein@bayerlein-networks.com>

* fix typo in new file

Co-authored-by: Ludwig Bayerlein <bayerlein@bayerlein-networks.com>
Co-authored-by: Sebastian Gumprich <rndmh3ro@users.noreply.github.com>
2021-10-28 10:31:58 +02:00
schurzi
08b0fd14f4
Merge pull request #494 from dev-sec/sysctl-34
implement sysctl-34 - link protection settings
2021-10-24 11:21:14 +02:00
schurzi
ff37289879
Merge pull request #493 from dev-sec/rndmh3ro-patch-1
update minimum ansible version for roles
2021-10-24 11:09:37 +02:00
Sebastian Gumprich
9f372c285c
Update roles/os_hardening/defaults/main.yml
Co-authored-by: schurzi <Martin.Schurz@t-systems.com>
2021-10-24 10:59:49 +02:00
Claudius Heine
384c097f8a
feat(os_hardening): extend file permission tasks to cover more files (#489)
The tasks `Change shadow ownership to root and mode to 0600` and `Change
passwd ownership to root and mode to 0644` only handle
`/etc/shadow` and `/etc/passwd` respectively. But there multiple
adjacent files that should be handled with these rules as well:

- `/etc/gshadow`
- `/etc/shadow-`
- `/etc/gshadow-`
- `/etc/group`
- `/etc/shadow-`
- `/etc/group-`

This change adds those files to the rules, so that permissions are
handled in the same way.

Closes: #488

Signed-off-by: Claudius Heine <ch@denx.de>
2021-10-21 09:51:20 +02:00
rndmh3ro
346b064682 implement sysctl-34 - link protection settings
Signed-off-by: rndmh3ro <github@gumpri.ch>
2021-10-20 20:59:49 +02:00
Sebastian Gumprich
be0d501bc8 update minimum ansible version for roles
fixes #407

Signed-off-by: rndmh3ro <github@gumpri.ch>
2021-10-20 20:42:05 +02:00
Sina Tak Tehrani
5debcc0c6f
fix filter error in ansible.builtin.file mode parameter (#486)
* fix filter error in ansible.builtin.file mode parameter

* Change cinc supermarket

* fix link to baseline

* fix typo

Co-authored-by: Sebastian Gumprich <rndmh3ro@users.noreply.github.com>
2021-10-18 20:55:24 +02:00
ReinerNippes
e819f89ccb
ssh_allow_tcp_forwarding is not a boolean (#480)
Changed the comment to "Set to 'yes', 'no', 'local', 'all' or 'remote' to allow TCP Forwarding"
2021-08-30 15:46:03 +02:00
Roger Meier
8fdb4e55b8
chore(ssh_hardening): set min_ansible_version to >=2.9.10 (#479) 2021-08-28 15:21:59 +02:00
rndmh3ro
8ff3d73bbf Prettified Code! 2021-08-25 10:58:16 +00:00
123quhiwiwk
062dd3f092
Use log_error/datadir from database settings instead of default variable (#478)
Signed-off-by: 123quhiwiwk <70281681+123quhiwiwk@users.noreply.github.com>
2021-08-25 12:57:46 +02:00
123quhiwiwk
4671a32062
Execute check of error logfile permissions only when log_error is defined (#477)
Signed-off-by: 123quhiwiwk <70281681+123quhiwiwk@users.noreply.github.com>
2021-08-24 09:41:55 +02:00
Shawn Wilsher
3b33e0a7aa
[mysql_hardening] Setup defaults for MySQL on FreeBSD (#474)
Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>
2021-08-20 13:00:12 +02:00
schurzi
d7eb00f4b7
Merge pull request #475 from dev-sec/ansible_lint
use Ansible lint in separate task
2021-08-15 22:53:41 +02:00
rndmh3ro
cf17f80374 skip linting on special task
Signed-off-by: rndmh3ro <github@gumpri.ch>
2021-08-15 20:16:56 +02:00
Shawn Wilsher
9ab06a5e06
[mysql_hardening] Allow setting the mysql_distribution (#473)
* [mysql_hardening] Allow setting the mysql_distribution

On some operating systems, the package for MySQL is not `mysql-server`,
and so the default check for this will not yield the correct result.
This change adds an escape hatch by letting the user set
`mysql_distribution`.  Additionally, it verifies that it is set to a
legal value if the user has set it.

Closes #472

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>

* Update roles/mysql_hardening/tasks/main.yml

Co-authored-by: Sebastian Gumprich <rndmh3ro@users.noreply.github.com>
2021-08-15 20:03:07 +02:00
Filippo Tessarotto
3a73f6c46a
SSH Hardening: backtick typo (#471) 2021-08-06 13:41:05 +02:00
Paweł Krawczyk
66bd1f0aec
Add CVE-2021-33909 mitigations (#466)
* Add CVE-2021-33909 mitigations

kernel.unprivileged_bpf_disabled: 1
kernel.unprivileged_userns_clone: 0

The first one is also used by Tails.

Signed-off-by: Paweł Krawczyk <616047+kravietz@users.noreply.github.com>

* Clean up whitespaces

Signed-off-by: Paweł Krawczyk <616047+kravietz@users.noreply.github.com>
2021-07-22 16:32:41 +02:00
Maik Stübner
714a34fa55
Allow configuration of password remember in pam (#467)
* Add Configuration of password remember
and set default to 60

see Telekom 2021.07-01 SoC 3.01 Req 25 and SoC 3.65 Req46

Signed-off-by: Maik Stuebner <Maik.Stuebner@t-systems.com>

* set default for password remember back to 5

Signed-off-by: Maik Stuebner <Maik.Stuebner@t-systems.com>

* readme default for password remember back to 5

Signed-off-by: Maik Stuebner <Maik.Stuebner@t-systems.com>
2021-07-22 10:18:01 +02:00
Leo Gallucci
585f1dc227
Add SUB_UID_MIN/MAX/COUNT, SUB_GID_MIN/MAX/COUNT (#463)
* add SUB_UID_MIN/MAX/COUNT, SUB_GID_MIN/MAX/COUNT

Similar reason as #461

> If /etc/subuid exists, the commands useradd and newusers (unless the user already have subordinate user IDs)
> allocate SUB_UID_COUNT unused user IDs from the range SUB_UID_MIN to SUB_UID_MAX for each new user.
> The default values for SUB_UID_MIN, SUB_UID_MAX, SUB_UID_COUNT are respectively 100000, 600100000 and 65536.

Signed-off-by: Leo Gallucci <elgalu3@gmail.com>

* document SUB_UID_MIN/MAX/COUNT, etc

Signed-off-by: Leo Gallucci <elgalu3@gmail.com>
2021-07-16 09:41:37 +02:00
Leo Gallucci
f92d193d3d
add os_auth_uid_max, os_auth_gid_max (#461)
Signed-off-by: Leo Gallucci <elgalu3@gmail.com>
2021-07-12 15:32:02 +02:00
蚯蚓
27c6b93d04
add "when" statements in hardening.yml(#453) (#455)
* add "when" statements in hardening.yml(#453)

Signed-off-by: jqiuyin <943571574@qq.com>

* add "when" statements in hardening.yml(#453)

Signed-off-by: jqiuyin <943571574@qq.com>

* add "when" statements in hardening.yml(#453)

Signed-off-by: jqiuyin <943571574@qq.com>
2021-07-01 11:25:14 +02:00
Sebastian Gumprich
4ca4f09453
Cleanup old OS-support and simplify vars (#458)
* use os_family instead of distribution for debian systems

Signed-off-by: rndmh3ro <github@gumpri.ch>

* remove tasks related to rhel6 or debian 6

Signed-off-by: rndmh3ro <github@gumpri.ch>
2021-06-30 13:09:46 +02:00
Sebastian Gumprich
72ec118a6d
add rocky linux 8 tests and make sure that all relevant tasks are execd (#457)
* add rocky linux 8 tests and make sure that all relevant tasks are executed

Signed-off-by: rndmh3ro <github@gumpri.ch>

* fix missing quote

Signed-off-by: rndmh3ro <github@gumpri.ch>
2021-06-30 13:09:12 +02:00
Sebastian Gumprich
9cefddd949
make sha rounds configurable and increase no of rounds (#452)
* make sha rounds configurable and increase no of rounds

Fixes #365

Signed-off-by: rndmh3ro <github@gumpri.ch>

* Prettified Code!

* make password rounds configurable in pam system-auth

Signed-off-by: rndmh3ro <github@gumpri.ch>

* change wording of sha rounds documentation

Co-authored-by: schurzi <Martin.Schurz@t-systems.com>

Co-authored-by: schurzi <Martin.Schurz@t-systems.com>
2021-06-30 10:41:59 +02:00
Sherwin Daganato
350b5891d1
Add support for Rocky Linux 8 (#454)
Signed-off-by: Sherwin Daganato <sherwin@daganato.com>
2021-06-30 10:12:07 +02:00
schurzi
29e10e5c3b
add tag always to os dependent vars task (#456)
when our collection is used with tags, the os dependent variables are
not resolved. This task should run every time, so the behaviour is
correct.

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2021-06-29 13:07:25 +02:00
Colin Adler
8cbeeff501
Use include_tasks for os_hardening/main.yml (#451)
When `import_tasks` is used, the task `Fetch OS dependent variables`
always runs, even when excluded by an upstream tag.

When `Fetch OS dependent variables` runs while excluded via tags, it
will always fail with the following.

```
fatal: [alpha]: FAILED! => {"msg": "No file was found when using first_found. Use errors='ignore' to allow this task to be skipped if no files are found"}
```

This brings os_hardening's main.yml in line with ssh_hardening's
main.yml, which doesn't have this issue.

Signed-off-by: Colin Adler <colin@coder.com>
2021-06-23 11:28:08 +02:00
Sebastian Gumprich
41cd8485cb
enable ipv6 globally (#450)
Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
2021-05-26 20:13:45 +02:00
Lars Düsing
0beeb3ee03 Removed sysctl that tries to disable IPv6. #416
Signed-off-by: Lars Düsing <lars@camelotsweb.de>
2021-05-24 13:33:38 +02:00
rndmh3ro
07a0943c5a Prettified Code! 2021-04-30 12:50:12 +00:00
alimli
4f42e0d396
ssh_allow_tcp_forwarding remote option added (#447)
Signed-off-by: Haldun ALIMLI <haldun.alimli@upandrunning.cloud>

Co-authored-by: Haldun ALIMLI <haldun.alimli@upandrunning.cloud>
2021-04-30 14:49:42 +02:00
Martin Neubert
0324273dce
Check for MariaDB Version when selecting users without passwords (#444)
* added version check for MariaDB in Query

MariaDB Uses the authentication_string field since 10.4.0, added this in version check in query for users to delete

Signed-off-by: Martin Neubert <martin.neubert@t-systems.com>

* Update roles/mysql_hardening/tasks/mysql_secure_installation.yml

Co-authored-by: Sebastian Gumprich <rndmh3ro@users.noreply.github.com>

* Update roles/mysql_hardening/tasks/mysql_secure_installation.yml

Co-authored-by: Sebastian Gumprich <rndmh3ro@users.noreply.github.com>

Co-authored-by: Sebastian Gumprich <rndmh3ro@users.noreply.github.com>
2021-04-28 09:52:09 +02:00
Martin Neubert
284943b699
USER and HOST should be quoted (#443)
USER and HOST should be quoted to avoid errors in drop user statement

Signed-off-by: Martin Neubert <martin.neubert@t-systems.com>
2021-04-27 21:16:50 +02:00
Paul Seidler
b12ee4d23b
ssh: Client HostKeyAlgorithms configuration variable (#442)
* ssh: Client HostKeyAlgorithms configuration variable

Introduce a new variable ssh_client_host_key_algorithms to be able to configure
it for the client like for the server.
This fixes #441

Signed-off-by: Paul Seidler <705535+sepek@users.noreply.github.com>

* sshd: Adapt the ssh_host_key_algorithms description

Linking to the latest version may lead to a broken config so be a bit more
  dynamic

Signed-off-by: Paul Seidler <705535+sepek@users.noreply.github.com>
2021-04-23 15:54:30 +02:00
Sina Tak Tehrani
4313d6fbfb
fixed a typo in comments (#439)
Signed-off-by: Sina Tak Tehrani <ssttehrani@gmail.com>
2021-04-09 08:15:11 +02:00