UNPKG

@sebastienrousseau/dotfiles

Version:

The Trusted Shell Platform — Universal dotfiles managed by Chezmoi. Features Bash & Zsh for macOS, Linux & WSL. Rust modern tooling & enterprise-grade security.

46 lines (31 loc) 1.78 kB
--- render_with_liquid: false --- # Security How dotfiles handles security and system modifications. ## Core Principles - **Opt-In Only** — No hardening applies unless `DOTFILES_*` variables are set to `1`. - **Local Logging** — All actions log to `~/.local/share/dotfiles.log`. No telemetry. - **No Hidden Sudo** — Sudo requests only for package managers. Never cached indefinitely. ## Hardening | Feature | Env Var | Action (macOS) | Action (Linux) | |---|---|---|---| | Firewall | `DOTFILES_FIREWALL` | Enables `socketfilterfw` + Stealth Mode | Configures UFW | | Telemetry | `DOTFILES_TELEMETRY` | Disables Diagnostic plists | Disables `whoopsie`/`apport` | | DNS-over-HTTPS | `DOTFILES_DOH` | Browser-level settings | Configures `resolvectl` | | Idle Security | `DOTFILES_LOCK` | Sets screensaver idle time | Sets GNOME/KDE idle-delay | ## Secrets The dotfiles use **age** for encryption. - **Initialization**: `dot secrets-init` creates a key at `~/.config/chezmoi/key.txt`. - **Storage**: Secrets are stored as `.age` encrypted files. - **Protection**: Private keys aren't committed to the repo. ## SSH Certificates Short-lived SSH certificates reduce the blast radius of key compromise. - **Issue**: `dot ssh-cert issue [--ttl 16h] [--principal user]` - **Status**: `dot ssh-cert status` — checks certificate validity and expiry - **Revoke**: `dot ssh-cert revoke` — revokes active certificates - **Backends**: `step-ca` (Smallstep) and local CA key (`ssh-keygen`) - **Default TTL**: 16 hours (override via `SSH_CERT_TTL` environment variable) - **CA URL**: Set `SSH_CERT_CA_URL` for `step-ca` integration ## Reporting a Vulnerability If you discover a security vulnerability, don't open a public issue. Follow the instructions in the Security Policy.