sudo lynis audit system
lynis audit system --slow-warning
lynis generate systemd-units
lynis show eol
LANG=sk_SK.UTF-8 ./lynis audit system
lynis audit system --noplugins
lynis audit system --skip-test=KRNL-6000:net.ipv4.ip_forward
lynis audit system --silent
lynis audit system --test MAIL-8817
lynis audit system --tests DBS-1818,DBS-1820
lynis upload-only
lynis show environment
lynis show hostids
lynis show groups
lynis audit system --tests-from-group AUTH
lynis update check
lynis audit system --developer
# Add to custom.prf
error-on-warnings=yes
lynis show settings
lynis audit system --dump-options
lynis audit system --report-file /tmp/lynis_audit.txt
cp etc/lynis/systemd/* /etc/systemd/system/
systemctl daemon-reload
systemctl enable lynis.timer
Summary
Lynis is an open-source command-line tool for auditing and hardening security on UNIX-based systems, including Linux, macOS, and BSD, and it is free to use. It runs directly on the host it scans, checking configuration, installed software, and known vulnerabilities against hardening benchmarks and compliance frameworks such as ISO27001, PCI-DSSPCI-DSSThe Payment Card Industry Data Security Standard, security requirements for protecting payment account data. It covers organizations that store, process or transmit that data and relevant service providers., and HIPAAHIPAAA US federal law enacted in 1996 that sets privacy and security requirements for protected health information, giving cyber tools a compliance baseline to enforce or audit against.. Its documentation describes system administrators, auditors, and security officers as typical users, alongside penetration testers who now include it in their toolkit. Rather than positioning itself against a named competitor, it sits in the general system-hardening and compliance-auditing space, with checks that grow to cover new distributions, malware scanners, and platform-specific controls like macOS FileVaultFileVaultApple's full-disk encryption feature built into macOS, using XTS-AES-128 to encrypt the startup volume so that data is unreadable without the user's credentials.. First committed in 2013 and maintained by 284 contributors, it remains active with a release in the last two months.
Security auditing and hardening tool for UNIX-based systems that performs in-depth scans and provides system hardening tips.
Which hardening gaps on this machine should I fix first?
runs an in-depth scan of configuration, installed software, and running services against its hardening database and lists findings as concrete suggestions rather than a raw pass/fail score
Does this system meet the controls auditors will ask about?
maps its checks to frameworks like ISO27001, PCI-DSS, and HIPAA so gaps show up against the specific control they fail, before an external auditor looks
Which installed packages have known vulnerabilities?
inventories installed software package by package and flags entries matching known vulnerable versions
Is my firewall and logging setup actually catching what it should?
inspects live iptables rules and accepted logging targets, and checks for a defined log file location, then reports where accounting or audit trails are missing
Are the antivirus and intrusion-detection agents on this host actually running?
looks for known malware scanners, antivirus products, and agents like Wazuh by process and installation footprint, and reports whether the ones present are active
Is this platform's support status something I should worry about?
checks the detected distribution and version against an end-of-life database and flags the finding directly when a platform's support status is unclear or expired
French, German, Greek, Indonesian, Italian, Japanese, Norwegian, Portuguese, Russian, Slovak, Spanish, Turkish
Release notes: French, German, Greek, Indonesian, Italian, Japanese, Norwegian, Portuguese, Russian, Slovak, Spanish, Turkish
Japanese added in 3.1.6 (Oct 23, 2025) · Portuguese added in 3.1.4 (Jan 28, 2025) · Italian, Russian, Spanish added in 3.1.3 (Dec 16, 2024) · German, Turkish added in 3.1.2 (Sep 26, 2024) · Indonesian added in 3.1.0 (Mar 11, 2024)
Features
21 capabilities
· 2 backed by code, an API document or a real run
Built from Lynis's releases, docs, README and our own runs.
“Seen” marks the month we first spotted a release the vendor didn't date.
Group names and tags are our labels.
Lynis covers 1 of the 11 endpoint investigation and controls capabilities we track.
What Lynis offers you
Command-line interface3
Scheduled jobs1
Show
No capabilities match.
+Security baseline assessment5 featuresEndpoint investigation and controlssince 2014▸
+Security control validationshippedExecutes specific compliance checks for cryptography, malware detection, firewall configuration, and account management.52 releases · 4 other sources · first seen Oct 2014▸
Shared capability: Security baseline assessment
release
52 total
FIRE-4586: Accepts NFLOG as a valid logging target when auditing iptables firewall rules.
3.1.6 · Oct 2025
· source
· release history
ACCT-9634: Defines a default auditd log file location for accounting checks.
3.1.6 · Oct 2025
· source
· release history
New test CRYP-7932 checks macOS FileVault full-disk encryption status.
3.1.2 · Sep 2024
· source
· release history
Extends CONT-8104 to detect errors (not only warnings) in docker info output.
3.1.2 · Sep 2024
· source
· release history
SSH-7408 test logic refined to only evaluate Compression if sshd version is < 7.4
3.0.9 · Aug 2023
· source
· release history
Adds TOOL-5130 check for active Suricata daemon
3.0.2 · Dec 2020
· source
· release history
example
Verify Postfix configuration integrity using the new detection module.$ lynis audit system --test MAIL-8817
2.4.4 · Mar 2017
· source
Run a system scan to detect MongoDB presence and verify its auth configuration$ lynis audit system --tests DBS-1818,DBS-1820
2.4.2 · Feb 2017
· source
Run a full system scan but limit the tests to those within the AUTH category for a faster authentication-focused review.$ lynis audit system --tests-from-group AUTH
2.3.2 · Aug 2016
· source
Save the audit report to a specific file instead of the default directory.$ lynis audit system --report-file /tmp/lynis_audit.txt
2.0.0 · Feb 2015
· source
+Scan execution controlshippedProvides options to modify the audit execution flow, such as filtering tests by category, enabling quick mode, and specifying binary directories.10 releases · 4 other sources · first seen Aug 2016▸
Shared capability: Security baseline assessment
release
10 total
--slow-warning flag allows tests more time before showing a warning message during scan execution
3.0.1 · Oct 2020
· source
· release history
Adds lynis generate systemd-units subcommand to generate systemd service units for Lynis.
3.0.0 · Jun 2020
· source
· release history
Lynis now runs non-interactive by default; the previous --quick behavior is now the default, and you must use --wait to pause for input.
3.0.0 · Jun 2020
· source
· release history
Adds --devops, --forensics, and --pentest flags to activate specialized audit modes that change the scan behavior based on intent.
3.0.0 · Jun 2020
· source
· release history
Adds system-groups option to the profile configuration file for enterprise environments
2.6.1 · Jan 2018
· source
· release history
Supports skip-test=KRNL-6000:<sysctl-key> to skip specific sysctl keys within the KRNL-6000 test.
2.5.9 · Jan 2018
· source
· release history
example
Run Lynis with extended timeout for slow systems to prevent premature warnings$ lynis audit system --slow-warning
3.0.1 · Oct 2020
· source
Generate a systemd service file for automated Lynis execution.$ lynis generate systemd-units
3.0.0 · Jun 2020
· source
Skip a specific sysctl key check within the kernel network test if it is irrelevant to your environment.$ lynis audit system --skip-test=KRNL-6000:net.ipv4.ip_forward
2.5.9 · Jan 2018
· source
Run Lynis silently without any console output, using the new short flag.$ lynis audit system --silent
2.5.7 · Oct 2017
· source
+Boot loader security analysisshippedExecutes specific checks for boot loader configuration and security posture, including rEFInd presence and systemd-analyze security assessments.5 releases · first seen Oct 2014▸
Shared capability: Security baseline assessment
release
BOOT-5140 - Check for ELILO boot loader presence
3.0.4 · May 2021
· source
· release history
Adds BOOT-5109 test to check for rEFInd boot loader presence.
3.0.0 · Jun 2020
· source
· release history
Adds BOOT-5264 test to run systemd-analyze security.
3.0.0 · Jun 2020
· source
· release history
BOOT-5104 now runs on macOS for boot sector checks
2.5.1 · May 2017
· source
· release history
Adds grub2-install to the list of required binaries for boot loader testing.
1.6.3 · Oct 2014
· source
· release history
+Audit suggestion and context enhancementshippedProvides external links to documentation and clarifies ambiguous platform states in the audit output.2 releases · first seen Sep 2016▸
Shared capability: Security baseline assessment
Also counts toward: Command-line interface
release
Adds links to blog posts and articles within suggestions to provide context for missing control information.
3.1.3 · Dec 2024
· source
· release history
Adds lynis show details <test_id> to display relevant test sections directly via CLI
2.3.4 · Sep 2016
· source
· release history
+Non-privileged scan modeshippedAllows users to run the cyber tool without root permissions, triggering a reduced-scope scan instead of failing.1 release · first seen Oct 2014▸
Shared capability: Security baseline assessment
release
Adds non-privileged scan mode: running Lynis without root permissions now starts a reduced-scope scan instead of failing.
1.6.3 · Oct 2014
· source
· release history
+Other / not yet classified16 featuresFeatures we have not matched to a capability yet. A suggested match is marked.▸
+Operating system and distribution detectionshippedSupports auditing across a wide variety of Linux distributions, BSDs, macOS versions, and container base images.21 releases · first seen Nov 2014▸
release
21 total
Supports three new platforms: CachyOS, macOS Tahoe, and OpenMandriva Lx.
3.1.6 · Oct 2025
· source
· release history
Adds full audit support for OpenWrt, including HostID and HostID2 generation on that platform.
3.1.5 · Jul 2025
· source
· release history
Recognizes openSUSE Tumbleweed-Slowroll as a distinct distribution.
3.1.5 · Jul 2025
· source
· release history
Adds macOS Sequoia to the list of recognized platforms for auditing.
3.1.4 · Jan 2025
· source
· release history
Adds OS detection for Buildroot, Fedora Linux Asahi Remix, Garden Linux, and Peppermint OS.
3.1.3 · Dec 2024
· source
· release history
Extends Slackware support with installed-package querying via functionPackageIsInstalled().
3.1.2 · Sep 2024
· source
· release history
+Package inventory and verificationshippedQueries installed packages and applications to verify system state and integrity.20 releases · first seen Sep 2014▸
release
20 total
New test PKGS-7305 queries macOS applications in /Applications and CoreServices.
3.1.2 · Sep 2024
· source
· release history
Adds version numbers to Homebrew package output in PKGS-7303.
3.1.2 · Sep 2024
· source
· release history
Extends Slackware support with installed-package querying via functionPackageIsInstalled().
3.1.2 · Sep 2024
· source
· release history
DBS-1820 updated to recognize the newer style format for Mongo authorization settings
3.0.9 · Aug 2023
· source
· release history
FILE-6410 check now includes plocate locations for system database queries
3.0.9 · Aug 2023
· source
· release history
+End-of-life status monitoringshippedChecks platform and package end-of-life dates against a known database to flag unsupported software.16 releases · 1 other source · first seen Sep 2014▸
Adds NixOS EOL data to the end-of-life database.
3.1.7 · Jun 2026
· source
· release history
example
Check if the current OS is approaching end-of-life status$ lynis show eol
2.7.2 · Mar 2019
· source
+Antivirus and endpoint protection detectionshippedIdentifies installed antivirus or malware scanning agents across different operating systems.13 releases · first seen Sep 2014▸
release
13 total
MALW-3280: Improved detection of the Wazuh agent.
3.1.6 · Oct 2025
· source
· release history
Detects Bitdefender antivirus installations on Linux during security audits.
3.1.5 · Jul 2025
· source
· release history
Adds Wazuh as a recognized malware scanner, antivirus, and rootkit detection tool (MALW/LOGG checks).
3.1.2 · Sep 2024
· source
· release history
Adds Microsoft Defender Antivirus detection to MALW-3291.
3.1.2 · Sep 2024
· source
· release history
Adds ESET Endpoint Antivirus detection to MALW-3200.
3.1.2 · Sep 2024
· source
· release history
Adds support for integrating with Bro and Suricata intrusion detection systems
2.7.5 · Jun 2019
· source
· release history
+System and kernel inspectionshippedExamines kernel modules, JBD drivers, service managers, and hardware architecture support.12 releases · first seen Sep 2014▸
release
12 total
Extends kernel module checks to also scan under /usr/lib/modules.d.
3.1.5 · Jul 2025
· source
· release history
New test FILE-6398 checks whether the JBD (Journal Block Device) kernel driver is loaded.
3.1.2 · Sep 2024
· source
· release history
New test FINT-4344 checks whether the Wazuh agent is running.
3.1.2 · Sep 2024
· source
· release history
Adds HRDN-7231 check for registered non-native binary formats
3.0.3 · Jan 2021
· source
· release history
Adds support for Solaris svcs service manager
3.0.2 · Dec 2020
· source
· release history
Adds detection for BSD-style (rc.d) init systems on Linux hosts
2.7.5 · Jun 2019
· source
· release history
+Audit configuration inspectionshippedLists and dumps available audit options and configuration settings for the current installation.6 releases · 3 other sources · first seen Feb 2015▸
release
Adds the generate subcommand to create configuration files from the current system state
2.7.4 · Apr 2019
· source
· release history
Adds [MAIL-8804] test to verify Exim configuration settings
2.6.5 · Jun 2018
· source
· release history
Adds ROOTDIR variable to replace fixed paths in configuration
2.5.0 · May 2017
· source
· release history
Adds lynis show categories and lynis show groups commands to list available classification schemes for tests
2.3.2 · Aug 2016
· source
· release history
Adds lynis show [options|commands|version|settings] helper subcommand to display help, available commands, version, and active configuration values
2.3.0 · Jul 2016
· source
· release history
Adds --dump-options to dump all available audit options to stdout.
2.0.0 · Feb 2015
· source
· release history
example
List all security groups available in your current Lynis installation to plan a targeted audit.$ lynis show groups
2.3.2 · Aug 2016
· source
View which settings are currently active after merging default and custom profiles$ lynis show settings
2.3.0 · Jul 2016
· source
List all available configuration options for the current Lynis installation.$ lynis audit system --dump-options
2.0.0 · Feb 2015
· source
+Plugin execution controlverifiedAllows users to suppress plugin execution when running the tool.2 releases · 4 other sources · first seen Jan 2018▸
Also counts toward: Command-line interface
release
Adds disable-plugin profile option in .lynisrc or custom profiles to disable specific plugins.
3.0.0 · Jun 2020
· source
· release history
--noplugins flag allows skipping plugin execution entirely.
2.5.9 · Jan 2018
· source
· release history
docs
Security auditing and hardening tool for UNIX-based systems that performs in-depth scans and provides system hardening tips.
command line
--no-plugins — Do not run any of the enabled plugins.
3.0.0 · Jun 2020
· command-line history
example
Run Lynis without any external plugins for a faster, isolated scan.$ lynis audit system --noplugins
2.5.9 · Jan 2018
· source
Run a full system security audit$ ./lynis audit system
+Virtualization detectionshippedDetects if the system is running inside a virtual machine or container environment.5 releases · 1 other source · first seen Sep 2014▸
release
Adds allow-auto-purge option in the Lynis profile configuration to automatically purge data on short-lived systems
2.5.8 · Dec 2017
· source
· release history
Enhances OS-level detection capabilities for Linux Containers (LXC)
2.5.3 · Aug 2017
· source
· release history
Adds hostid and hostid2 configuration options to the Lynis profile for custom host identification
2.4.1 · Feb 2017
· source
· release history
Initial automatic updater implemented to allow scheduled updates from trusted sources
2.1.1 · Jul 2015
· source
· release history
Adds IsVirtualMachine function to detect running systems in various VM/container environments (Bochs, KVM, LXC, VMware, etc.)
1.6.2 · Sep 2014
· source
· release history
example
Display the current system's hardware and container status.$ lynis show environment
2.4.0 · Oct 2016
· source
+Output localization and internationalizationshippedProvides translated messages and localized status indicators for non-English users.4 releases · 1 other source · first seen Feb 2017▸
release
Adds STATUS_NOT_ACTIVE variable to translation files for localizing inactive status messages
3.1.0 · Mar 2024
· source
· release history
Adds Slovak language translations to the UI.
2.7.1 · Jan 2019
· source
· release history
Adds norwegian translation for Lynis interface and reports
2.5.4 · Sep 2017
· source
· release history
Allows colored output tuning via the colors=yes/no profile option in .lynisrc
2.4.3 · Feb 2017
· source
· release history
example
Change the UI language to Slovak before running an audit.$ LANG=sk_SK.UTF-8 ./lynis audit system
2.7.1 · Jan 2019
· source
+Custom audit report outputshippedAllows saving the audit report to a specific file path instead of the default location.3 releases · 2 other sources · first seen Feb 2015▸
Also counts toward: Command-line interface
release
Adds lynis upload-only subcommand to upload audit data without running a full audit.
2.4.0 · Oct 2016
· source
· release history
Adds proxy configuration support in the profile to allow report uploads via HTTP or SOCKS proxies
2.2.0 · Mar 2016
· source
· release history
Adds --report-file <path> to override the default audit report output location.
2.0.0 · Feb 2015
· source
· release history
example
Upload only the audit results to a remote server without executing a full scan.$ lynis upload-only
2.4.0 · Oct 2016
· source
Save the audit report to a specific file instead of the default directory.$ lynis audit system --report-file /tmp/lynis_audit.txt
2.0.0 · Feb 2015
· source
+Legal banner complianceshippedChecks system banners against defined strings for legal or policy requirements.2 releases · first seen Mar 2019▸
release
Adds prosecute and report to LEGAL_BANNER_STRINGS for legal banner checks.
3.1.2 · Sep 2024
· source
· release history
Adds detection for Lynis being scheduled (e.g. cronjob)
2.7.3 · Mar 2019
· source
· release history
+Working directory configurationverifiedAllows the tool to be run from the current working directory rather than a default or project root.1 release · 1 other source · first seen Jun 2020▸
release
Adds --usecwd flag to force Lynis to run from the current working directory.
3.0.0 · Jun 2020
· source
· release history
command line
--use-cwd — Run from the current working directory.
3.0.0 · Jun 2020
· command-line history
+Report content customizationshippedAllows users to configure what information is included in the audit report, such as enabling solution descriptions or managing warning visibility.2 releases · first seen Aug 2016▸
release
Improves report output to display atomic test results (e.g. Show atomic test in report)
2.4.8 · Mar 2017
· source
· release history
Adds new setting 'show-report-solution' to include solutions in reports
2.3.3 · Aug 2016
· source
· release history
+Automated scan schedulingshippedProvides systemd templates and example files to help users automate and schedule periodic scans.1 release · 1 other source · first seen Oct 2014▸
Also counts toward: Scheduled jobs
release
Adds systemd service and timer example file to help users automate scheduled scans.
1.6.3 · Oct 2014
· source
· release history
example
Automate nightly Lynis scans using the provided systemd templates.$ cp etc/lynis/systemd/* /etc/systemd/system/ systemctl daemon-reload systemctl enable lynis.timer
1.6.3 · Oct 2014
· source
+Data upload configurationshippedAllows users to configure whether scan data is uploaded, supporting centralized collection or privacy control.1 release · first seen Feb 2017▸
release
Enables configuring whether to upload scan data via a new profile option (typically upload_data)
2.4.3 · Feb 2017
· source
· release history
+Docker build auditing utilityshippedsuggestedProvides a helper utility specifically for auditing Docker build files.1 release · first seen Feb 2015▸
Suggested capability: Security baseline assessment. This is our guess, not confirmed.
release
Adds a Docker build file auditing helper utility.
2.0.0 · Feb 2015
· source
· release history
Lines in monospace are the tool's own words: help text
parsed from its source, or an endpoint from its API document. Under
release, a line is our summary of a dated release. Under
docs, it is quoted from the tool's own documentation or
website. Each links back to the source it came from.
Command line
View
Source
No command matches.
load a captured run
composed command
No matchesTry a different search, or clear a filter to see more.
option surface across analysed releases
options at that releaseadded, per releaseremoved, per release
option
found in
since
description
No matchesTry a different search, or clear a filter to see more.
option changes per release — drag across the rail to set a range
→
Values are placeholders taken from each option’s declared default.
Nothing is executed here — the output shown is a recording of a run
that already happened.
Score card
Shipping velocityreleases a month, last 12 months
Documentation qualityrelease-notes rubric, 0–100
Breaking-change disciplinehow rarely a release breaks users, and notice given
Maintenance riskquiet time against its own cadence, maintainers
Innovation & surfacenew capabilities, API and MCP surface
Community health
Contributor trenddistinct committers, this year against last
Maintainer concentrationbus factor now against a year ago
Issue backlog trendissues closed per issue opened, 12 months
Responsivenessmedian time to a maintainer’s first reply
Nine scores for Lynis, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.
Each score is 0–100 on a published rubric, derived from data this site already shows.
A dimension we cannot measure says so — it is never scored 0 and never enters a rank.
How this is scored
Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
Documentation quality — the release-notes rubric published on the analytics page, unchanged.
Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.
Release-note detail over time
See how much detail Lynis puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.
CISOfy's home, pricing and product pages and 6 more pages as they looked each month from September 2021 to October 2026: 26 renders, 1 change of tagline or palette. Step through them, play them, or put any two months side by side.
Website history is included with Researcher and Business.
← → or h l a month · Shift a year · [ ] previous / next change · Space play · 1 2 3 page · T whole page · C compare · F full size
← → or h l the right month · Shift the left · S swap · W wipe · T whole page · Esc back
Rebranding timeline
Dates bound when a change appeared between captures. Possible rebrands are AI suggestions; a redesign alone does not establish a rebrand.
Releases
Show
53 entries
No entries match these filters.
June 20261
October 20251
July 20251
January 20251
December 20241
September 20241
March 20242
August 20231
January 20221
July 20212
May 20211
January 20211
December 20201
October 20201
June 20201
June 20191
April 20191
March 20192
January 20191
October 20181
June 20181
May 20181
January 20182
December 20171
October 20171
September 20171
August 20171
July 20171
May 20172
March 20174
February 20173
October 20161
September 20161
August 20162
July 20161
March 20161
July 20151
April 20151
February 20151
November 20141
October 20141
September 20141
Project health
Issue, contributor and maintainer activity in CISOfy/lynis, 2023-10 – 2026-09,
as of 2026-09-25. Twelve-month figures first; the trend lines run
the whole window.
Contributors24−1 vs prior 12 months
Maintainers1+0 joined · −1 left, last 12 months
Bus factor1committers behind half the commits
Community-filed100%of issues opened, last 12 months
Median time to close40 daysfirst maintainer reply 36 hours
Open backlog171of 958 issues ever filed
Issues opened / month0 · 0communitymaintainers
Open backlog171
Contributors / month4
Commits / month8
Stars16,335
Issue themes, last 12 months
bugs 2%
features 4%
other 94%
Counts from the project's public repository and git history; no individuals
are identified. Maintainers are the committers covering 80% of the last year's
commits. how we measure this
Add the badge to your README
Maintain this project? The badge links readers straight to this page, so they can
follow every release here.