Checks whether a Linux server according to security best practices as defined in the CIS Distribution-Independent Linux Benchmark
Find a file
Devendra Turkar ce039756a6
chore: update go version to 1.21 (#87)
* chore: update go version to 1.21

This PR includes following changes
- update go dependency to 1.21
- update git action version
- replaced files with content in goreleaser.yaml
- add s390x in goarch

* Update go version
2024-01-29 12:28:37 +02:00
.github/workflows chore: update go version to 1.21 (#87) 2024-01-29 12:28:37 +02:00
cfg Fix Error with missing files in chapter 2.1 2021-03-14 15:21:19 +02:00
hack/test-definitions Fake test file that GitHub Actions should accept 2020-12-21 16:25:29 +00:00
.gitignore Update .gitignore 2020-01-08 03:10:36 +02:00
.goreleaser.yml chore: update go version to 1.21 (#87) 2024-01-29 12:28:37 +02:00
app.go chore: update go version to 1.19 (#84) 2023-02-06 08:44:30 +02:00
app_test.go Fake test file that GitHub Actions should accept 2020-12-21 16:25:29 +00:00
go.mod chore: update go version to 1.21 (#87) 2024-01-29 12:28:37 +02:00
go.sum chore: update go version to 1.21 (#87) 2024-01-29 12:28:37 +02:00
LICENSE Added license and notice files. 2019-02-10 11:44:56 +02:00
main.go Initialized basic bench project 2019-01-30 16:54:44 +02:00
makefile Update makefile 2019-08-07 14:04:50 +03:00
NOTICE Added license and notice files. 2019-02-10 11:44:56 +02:00
README.md docs: add image links 2020-12-17 17:29:55 +00:00
root.go Update root.go 2020-04-16 23:26:04 +03:00
utils.go Improve syslog detection 2020-12-02 12:50:30 +01:00

GitHub Release License Coverage Status GitHub Build Actions GitHub Release Actions

Linux-bench is a Go application that checks whether the Linux operating system is configured securely by running the checks documented in the CIS Distribution Independent Linux Benchmark.

Tests are configured with YAML files, making this tool easy to update as test specifications evolve.

CIS Linux Benchmark support

linux-bench currently supports tests for benchmark version 1.1.0 only.

linux-bench will determine the test set to run on the host machine based on the following:

  • Operating system platform - ubuntu/debian/rhel/coreos
  • Boot loader - grub/grub2
  • System logging tool - rsyslog/syslog-ng
  • Lsm - selinux/apparmor

Installation

Installing from sources

Install Go, then clone this repository and run as follows (assuming your $GOPATH is set):

go get github.com/aquasecurity/linux-bench
cd $GOPATH/src/github.com/aquasecurity/linux-bench
go build -o linux-bench .

# See all supported options
./linux-bench --help

# Run checks
./linux-bench

# Run checks for specified linux cis version
./linux-bench --version <version>

Tests

Tests are specified in definition files cfg/<version>/definitions.yaml.

Where <version> is the version of linux cis for which the test applies.

Contributing

We welcome PRs and issue reports.