Skip to content

How to Generate Baselines

Generating a baseline creates the YAML file that defines which security rules apply to your environment. This file is required before you can generate guidance documents, configuration profiles, or compliance scripts.


  1. List available baselines

    Terminal window
    ./mscp.py baseline -l
  2. Generate your baseline

    Terminal window
    ./mscp.py baseline -k BASELINE_NAME

    Example:

    config/custom/baselines/800-53r5_moderate_macos_26.0.yaml
    ./mscp.py baseline -k 800-53r5_moderate
  3. Find your file

    The baseline is saved to:

    config/custom/baselines/BASELINE_NAME_macos_VERSION.yaml

Add the -t flag to customize the baseline for your organization:

Terminal window
./mscp.py baseline -k 800-53r5_moderate -t

This starts an interactive process where you can:

  • Include or exclude specific rules
  • Set organization-specific values (like password length or timeout periods)

Custom values are saved to custom/rules/ for reuse.


FlagDescription
-lList all available baselines (tags and benchmarks)
-k NAMEGenerate baseline for the specified framework
-tEnable interactive tailoring
-cShow NIST 800-53 controls covered by the baseline
--os_nameTarget OS name
--os_versionTarget OS version

  • Directorymacos_security/
    • Directoryconfig/
      • Directorycustom/
        • Directorybaselines/
          • BASELINE_NAME_macos_VERSION.yaml The generated baseline file
    • Directorycustom/
      • Directoryrules/
        • *.yaml Custom values (if you used -t)