Skip to content
Ryan edited this page Apr 26, 2026 · 5 revisions

Linux Security Audit Project — Wiki

Welcome to the documentation for the Linux Security Audit Project! This wiki provides everything you need to install, configure, use, and extend this security compliance auditing tool.

🚀 Quick Links

Getting Started Reference Development
Quick Start Guide Framework Reference Development Guide
Usage Guide Module Documentation Contributing
Installation Output Reference Security Policy
Examples

📘 What Is This Tool?

The Linux Security Audit Project is a comprehensive Python-based security compliance auditing tool that:

  • ✅ Performs 1,207 automated security checks across 8 compliance frameworks
  • ✅ Generates reports in multiple formats (HTML, JSON, CSV, XML, Console) with companion JSON metadata
  • ✅ Provides detailed remediation guidance with commands and severity ratings
  • ✅ Operates audit-only by default — opt-in remediation modes (--remediate-fail, --auto-remediate) require explicit confirmation
  • Compliance scoring — weighted, simple, and severity-adjusted scores with configurable pass/fail thresholds
  • Zero external dependencies — pure Python 3.7+ stdlib; no pip, conda, or external HTTP at runtime
  • Standalone module execution — any module is fully runnable on its own
  • Cache-aware architecture — shared data cache delivers ~50% hit rate across modules
  • Parallel execution — configurable worker count via --parallel --workers N
  • OS-aware checks — distribution-specific optimizations for Debian, Red Hat, SUSE, and Arch families
  • Open source under MIT license

Supported Frameworks

Module Framework Checks
Core Foundational Linux Security Baseline 153
CIS CIS Benchmarks for Linux 212
CISA CISA Directives, KEV Catalog, Zero Trust 147
ENISA ENISA Cybersecurity Guidelines (EU) 97
ISO27001 ISO/IEC 27001:2022 Annex A Technical Controls 115
NIST NIST SP 800-53 R5 / CSF 2.0 / 800-171 172
NSA NSA Cybersecurity Guidance 144
STIG DISA STIGs (CAT I/II/III, V-numbers) 167
TOTAL 8 frameworks 1,207

📖 Documentation Sections

Getting Started

Get running in under 5 minutes

Perfect for first-time users. Covers:

  • Prerequisites verification
  • Installation (Git and manual)
  • Running your first audit
  • Understanding output
  • Common first-run scenarios
  • Next steps

Detailed installation instructions including:

  • System requirements (Python 3.7+, root/sudo)
  • Directory structure verification
  • Module discovery testing

Using the Tool

Comprehensive usage instructions for all scenarios

Learn how to:

  • Use command-line parameters (19 flags)
  • Select specific modules
  • Configure output formats and logging
  • Use parallel execution and profiling
  • Implement common use cases (compliance validation, hardening, drift detection)
  • Interpret results and compliance scores
  • Follow remediation workflow
  • Automate and schedule audits

Featured Sections:

Understanding and using audit reports

Detailed guide to:

  • HTML reports (18+ interactive features, SVG dashboard, compliance scoring)
  • JSON reports (machine-readable, automation-friendly, companion metadata)
  • CSV reports (spreadsheet-compatible, tracking)
  • XML reports (SIEM integration)
  • Console output (real-time progress with compliance scores)
  • Report locations and naming (reports/ and logs/ directories)
  • Parsing and integration examples

Real-world execution examples

For each of the 8 modules:

  • Full module description and coverage areas
  • Console output from test system execution
  • HTML report preview and feature demonstration

Framework Information

Detailed information about each security framework

Comprehensive documentation on:

  • Core: Baseline security, OS detection, distribution-specific guidance
  • CIS: Benchmark sections 1-6, scored recommendations, implementation groups
  • CISA: BODs, KEV catalog, zero trust maturity model, CPGs
  • ENISA: EU cybersecurity, GDPR-aligned controls, NIS2
  • ISO 27001: Annex A controls A.8.1-A.8.26, ISMS integration
  • NIST: 800-53 control families, CSF 2.0 functions, 800-171 CUI
  • NSA: SELinux/MAC, cryptographic standards, FIPS, CSfC
  • STIG: CAT I/II/III severity, V-numbers, RHEL/Ubuntu STIGs

Each section includes framework overview, organization background, specific standards referenced, check categories, resources, and applicability guidance.

Deep dive into each security module

For each of the 8 modules:

  • Module overview and purpose
  • Check categories and count
  • Key checks performed
  • Control/requirement mappings
  • Usage examples (standalone and integrated)
  • When to use the module

Troubleshooting & Support

Solve common issues quickly

Comprehensive troubleshooting for:

  • Execution Issues: Script won't run, module not found
  • Permission Errors: Access denied, root/sudo privileges
  • Module Errors: Individual module failures
  • Output Issues: Reports not generating, format problems
  • Performance Problems: Slow execution, caching issues
  • Results Interpretation: Understanding findings and compliance scores

Quick answers to common questions

Organized by topic: general, installation, execution, results, remediation, integration, troubleshooting, security, and compliance.


Development & Contributing

For developers and contributors

Complete guide covering:

  • Development environment setup
  • Project architecture (orchestrator, modules, shared components)
  • Creating new modules with shared caching API
  • Adding new checks with result format
  • Testing on multiple distributions
  • Code style and conventions
  • Debugging techniques
  • Performance optimization

How to contribute to the project

Ways to contribute: bugs, features, documentation, code, testing, translations. Development workflow, module checklist, and coding standards.

Responsible disclosure and security practices

Supported versions, vulnerability reporting, security considerations, and report security guidance.


🎯 Common Tasks

First-Time Users

  1. Quick Start Guide — Get up and running
  2. Usage Guide — Learn basic usage
  3. FAQ — Find answers to common questions

Regular Users

  1. Module Documentation — Understand what each module checks
  2. Output Reference — Master report analysis
  3. Examples — See real-world output
  4. Troubleshooting — Solve issues

Compliance & Audit

  1. Framework Reference — Understand compliance frameworks
  2. Usage Guide — Compliance scenarios
  3. Module Documentation — Framework-specific checks
  4. Examples — Sample audit output for evidence

Developers & Contributors

  1. Development Guide — Set up dev environment
  2. Contributing — Contribution process
  3. Security Policy — Security practices

📚 Additional Resources

Project Files

External Resources

Framework Documentation:

Python & Linux Resources:


🤝 Community & Support

Get Help

Stay Updated

  • ⭐ Star the repository — Show support and get notifications
  • 👀 Watch releases — Get notified of new versions
  • 🔄 Follow the project — Stay informed of updates

Contribute

We welcome contributions! Ways to help:

  • 🐛 Report bugs
  • 💡 Suggest features
  • 📝 Improve documentation
  • 🔧 Submit bug fixes
  • ✨ Add new modules or checks
  • 🧪 Test on different Linux distributions

See Contributing Guidelines or the Development Guide to get started.


📊 Quick Reference

Command Examples

# Run all checks with HTML output
sudo python3 linux_security_audit.py

# Run specific modules
sudo python3 linux_security_audit.py -m STIG,NIST,CIS

# Parallel execution with profiling
sudo python3 linux_security_audit.py --parallel --workers 4 --profile

# JSON output for automation
sudo python3 linux_security_audit.py -f JSON -o "/opt/audits/report.json" --quiet

# Verbose mode for troubleshooting
sudo python3 linux_security_audit.py --verbose --log-level DEBUG

Module Selection Guide

Use Case Recommended Modules
Federal/DoD Systems STIG, NIST, CISA
EU Compliance ENISA, ISO27001
Enterprise Best Practices CIS, Core
Critical Infrastructure CISA, NSA
Quick Assessment Core
Comprehensive Audit All modules

Status Level Quick Reference

Status Symbol Meaning Action
Pass Compliant None
Fail Security issue Fix immediately
Warning ⚠️ Potential issue Review
Info ℹ️ Informational Note
Error 🔴 Check failed Investigate

🔄 Recent Updates

See CHANGELOG.md for complete version history.

Current Version: 2.0

  • Shared components library with intelligent caching
  • Parallel module execution
  • Complete HTML report rewrite (18+ features)
  • Compliance scoring (3 methods)
  • Structured logging
  • OS-aware checks across 4 distribution families
  • 1,207 validated security checks across 8 frameworks

📝 Documentation Index

Core Documentation

Reference Documentation

Development Documentation

Operations


💡 Tips for Using This Wiki

  • Use the search (top right) to find specific topics
  • Sidebar navigation (right side) provides quick access to all pages
  • Links are color-coded: Blue for internal wiki pages, purple for external resources
  • Code blocks have copy button for easy use
  • Most pages have a Table of Contents at the top for quick navigation

🎉 Thank You!

Thank you for using the Linux Security Audit Project! This tool is maintained by volunteers and supported by the security community.

Questions? Issues? Ideas? We'd love to hear from you:

If this tool helps you, please:

  • ⭐ Star the repository
  • 📢 Share with colleagues
  • 🤝 Contribute back

Made with ❤️ for the cybersecurity community

Back to GitHub Repository


Linux Security Audit Project · Version 2.0 · MIT License
Last Updated: April 2026
Maintained By: Ryan Sandler
Project Status: Active Development

Linux Security Audit

Version 2.0 · 8 modules · 1,207 checks


🚀 Getting Started


📚 Reference


🏗️ Architecture


🛠️ Operations


📦 Release Information


🔍 Quick Reference

Frameworks Covered

Core · CIS · CISA · ENISA · ISO 27001 · NIST · NSA · STIG

Output Formats

HTML · JSON · CSV · XML · Console

Status Values

Pass · Fail · Warning · Info · Error

Severity Levels

Critical · High · Medium · Low · Informational


🔗 External Links

Clone this wiki locally