Commit graph

128 commits

Author SHA1 Message Date
Martin Schurz
bf51b96a0b add prepare for archlinux
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-12-06 20:21:49 +01:00
Martin Schurz
4bc5725836 hold grub updates in vm
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-12-06 17:51:39 +01:00
Martin Schurz
62340c79c6 re-add mysql config directory because it is needed by some os
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-12-06 16:33:31 +01:00
Martin Schurz
bc8b5f60f4 remove mysql config directory creation
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-12-06 16:08:31 +01:00
Martin Schurz
dff224f4c4 correct typo
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-12-06 15:57:08 +01:00
Martin Schurz
422fb940a9 manually fix remaining problems
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-12-06 15:27:21 +01:00
Martin Schurz
7e33ea0bae use ansible-lint to autofix problems
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-12-06 14:37:09 +01:00
Martin Schurz
5381a23a4a fix paste error
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-12-06 11:38:49 +01:00
Martin Schurz
e00716df62 fix lint findings
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-12-06 11:36:08 +01:00
Martin Schurz
20dd04c9cb split notify, add tmp options for arch
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-21 21:58:58 +01:00
Sebastian Gumprich
2db75b53c1
make it possible to configure more then yes and no for PermitTunnel (#715)
This is a breaking change, since the default variable is now a string instead of a bool

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@telekom.de>
2023-11-16 15:20:22 +01:00
schurzi
3d98cbf67b
add testing and support for current versions of Fedora and FreeBSD (#709)
* add testing and support for current versions of Fedora and FreeBSD

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* add waivers for FreeBSD

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* use original fedora images

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* also harden /home mount

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* also harden /tmp mount

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* test mock efi directory

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* remove mock

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* umount efi

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* add /tmp to special mountpoints

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* set options for /tmp mount

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* create /tmp mount

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* create /tmp mount and mount it ...

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* make fewer changes to default test run

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

* use correct Ansible var

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>

---------

Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-16 09:14:03 +01:00
schurzi
15f2de8b44
fix os ci (#711)
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-12 20:45:30 +01:00
Martin Schurz
3c73f8ab1d use release version of inspec profile again
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:47:00 +01:00
Martin Schurz
8e97184d5e test wirth modified inspec profile
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:39:20 +01:00
Martin Schurz
7437f68c86 onece more ...
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:26 +01:00
Martin Schurz
bf177add07 one last time ...
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:26 +01:00
Martin Schurz
fb22b242fe better compare for utf8
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:25 +01:00
Martin Schurz
99784726f8 drop role after test for inspec
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:25 +01:00
Martin Schurz
fdf7bbd7be correct hostname in test
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:25 +01:00
Martin Schurz
ee1fec3d3e correct indentation
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:25 +01:00
Martin Schurz
35df355248 add tests for roles
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:25 +01:00
Martin Schurz
219ec1938b try symlink fix
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:25 +01:00
Martin Schurz
336861838a try local path
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:25 +01:00
Martin Schurz
b07ac77223 test removing requirements
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:25 +01:00
Martin Schurz
4756a620f2 reduce dir dependencies
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:37:02 +01:00
Martin Schurz
c59a4d4e48 fix role path
Signed-off-by: Martin Schurz <Martin.Schurz@telekom.de>
2023-11-11 15:36:26 +01:00
Sebastian Gumprich
0675167cb2 do not create role for now!
Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
2023-11-11 15:34:33 +01:00
Sebastian Gumprich
0bf528d83b do not try to drop roles in mysql hardening
There's a new feature in mariadb 10.1 (https://mariadb.org/grant-to-public-in-mariadb/) and mysql 8 (need to verify).

    MariaDB has quite a complex privilege system. Most of it is based on the SQL Standard spec; however we do have some specific MariaDB extensions. GRANT ... TO PUBLIC (MDEV-5215) is a standard feature that is now available as a preview in MariaDB 10.11.0. It is related to ROLES and DEFAULT ROLE, but it covers a different use case.

    ROLES are effectively “privilege packages” that you can enable and disable as a user. One can also set which “privilege package” will be enabled at connect time by setting a DEFAULT ROLE per user. This is all quite useful, however it is missing one key feature. For a DBA, it would be quite useful to state only once that all users need to have a certain set of privileges. This is where GRANT ... TO PUBLIC comes in.

Some more information here: https://mariadb.org/wp-content/uploads/2018/07/MariaDB-Roles-Tampere-Unconference-2018.pdf

This role is shown as a user, it has however a new is_role-flag.

MariaDB [(none)]> select user, host, is_role from mysql.user;
+-----------------------+-----------+---------+
| User                  | Host      | is_role |
+-----------------------+-----------+---------+
| mariadb.sys           | localhost | N       |
| root                  | localhost | N       |
| mysql                 | localhost | N       |
| PUBLIC                |           | Y       |
| monitoring            | %         | N       |
| monitoring            | localhost | N       |
| galera_mariadb_backup | %         | N       |
+-----------------------+-----------+---------+

Since this "user" does not have a password or authentication_string, the ansible-role tries to delete it but fails.

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
2023-11-11 15:34:33 +01:00
Sebastian Gumprich
e3273a8d54
disable pam tests (#691)
Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
Co-authored-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
2023-08-07 14:38:44 +02:00
Sebastian Gumprich
f295397611
add role argument spec for os, ssh, mysql (#687)
* add role argument spec for os, ssh, mysql

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* add role argument spec for os, ssh, mysql

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* remove variable in variable as it cannot be used in argument spec

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* fix wrong syntax

* fix spelling errors

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* cannot use vars before arg-spec validation

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* yamllint the arg-spec

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* add back variable

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* remove redundant setting in tests

* fix descriptions in mysql hardening to betterreflect what they do

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* remove duplicate empty line

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* set correct defaults on to ssl options

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* remove left-over hidepid argument spec

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* remove license and author infos, this lives in the collection readme

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* fix styling

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* update some descriptions and sort them in the readme

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* some more linting

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

---------

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
Co-authored-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
2023-08-07 14:30:59 +02:00
Sebastian Gumprich
ef5e8801e4
add debian 12 support (#684)
* add debian 12 support

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* temp disable pam-checks

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* remove debian12 from vagrant tests as there's no box yet

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* use new pam-tester from pip

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* use new pam-tester from pip

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* add setuptoolks to pam-tester install

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* add setuptoolks to pam-tester install

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* add setuptoolks to pam-tester install

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* add setuptoolks to pam-tester install

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* install pam-tester with python3 and use full path to it

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* install python3-setupttools in verify-tests

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* fix path for pam-tester in all tests

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* set python interpreter to 3 for verify-tests

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* Revert "set python interpreter to 3 for verify-tests"

This reverts commit 00b6556e33.

* add back accidentally deleted tasks

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

---------

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
Co-authored-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
2023-08-04 12:59:40 +02:00
Martin Schurz
7259d6b5fd fix spelling errors
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-14 23:51:53 +02:00
Martin Schurz
bb47300798 remove unneccessary collection include
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-12 20:27:35 +02:00
Martin Schurz
de0439ed58 remove unneccessary collection include
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-12 20:22:22 +02:00
Martin Schurz
f02f8b9a90 add procps for Debian
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-11 07:20:44 +02:00
Martin Schurz
5cc7b8dee3 add waivers for os_hardening
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-11 07:17:29 +02:00
Martin Schurz
e43f180112 update waiver path
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-10 23:48:52 +02:00
Martin Schurz
31c9885610 use docker for inspec-auditor
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-10 23:22:41 +02:00
Martin Schurz
4a9d6033eb try docker for inspec-auditor
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-10 23:04:46 +02:00
Martin Schurz
ebab98930c try docker for inspec-auditor
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-10 22:58:28 +02:00
Martin Schurz
dd5ad568b3 fix deprecation warnings
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-10 20:36:03 +02:00
Martin Schurz
7b69c4bd47 add collection link
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-10 11:21:12 +02:00
Martin Schurz
e4ecfe2084 add collection to verify
Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-04-10 11:03:33 +02:00
schurzi
29f8a2fb78
add testing for OpenBSD and FreeBSD (#642)
* add testing for OpenBSD and FreeBSD

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* make python work

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* remove jinja template ...

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* make verify work

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* correct verify

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* correct verify

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* correct verify

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* correct verify

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use right vm name for connect

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* add a bit of documentation

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* remove sudo

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* add weird OpenSBD workaround

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* make verify playbook more consistent

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* rename nonlinux to BSD

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use openbsd7 for testing

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* correct use openbsd7 everywhere

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* add waivers

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* update waiver descriptions

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use docker for inspec

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* keep looking right ;)

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* correct path to waivers

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use ephemeral directory in docker

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use bsd inspec profile

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* remove openbsd workaround

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* re-add openbsd workaround

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* commit suggestions

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* add supportet OS to metadata

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use current python

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

---------

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-03-31 09:50:04 +02:00
renovate[bot]
32cc9665dd
Update dependency geerlingguy.git to v3.0.1
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-03-31 07:15:43 +00:00
schurzi
5ed3f399f2
add check mode to molecule tests (#644)
* add check mode to molecule tests

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* bail on undefined variables

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* bail on undefined variables

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* execute tasks in check mode

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* fix error in check mode on SuSE

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use when condition on task

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

---------

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-03-09 09:37:59 +01:00
schurzi
6e5621cdc9
simplify MySQL queries for user deletion (#641)
* use rowcount to determine mysql results

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use correct list level

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* remove json_query

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* remove intermediate vars

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* add check for count

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* drop condition, since one result must exist

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* move rowcount in condition

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* do loop in ansible to report each deleted user

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* add idempotency check

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* additional tests to verify user deletion

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* actually iterate the whole user list when deleting

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* fix tests for SuSE

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* adopt suggestions

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

---------

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-03-01 14:19:50 +01:00
Sebastian Gumprich
988e5322cd
Fix molecule tests for EL7 (#636)
* Fix molecule tests for EL7

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* Apply suggestions from code review

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

* try to fix tests in centos 7

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

* try to fix tests in centos 7

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>

---------

Signed-off-by: Sebastian Gumprich <sebastian.gumprich@t-systems.com>
Co-authored-by: dev-sec CI <hello@dev-sec.io>
Co-authored-by: schurzi <Martin.Schurz@t-systems.com>
2023-02-14 11:15:21 +01:00
schurzi
9b32aca0ca
run our CI tests periodically (#634)
* allow multiple instances for os vm tests

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* add scheduled trigger to all test actions

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use different scenario names

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use different scenario names

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use different scenario names

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use username to create uniqe vms

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* use compatible name

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

* add explaination

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>

---------

Signed-off-by: Martin Schurz <Martin.Schurz@t-systems.com>
2023-02-07 09:27:46 +01:00