# arcline-audit One-command site health auditor. Checks SSL, HTTP security headers, DNS records, redirect chains, and basic infrastructure info for any domain. Useful for onboarding new clients and producing a quick written report before an engagement starts. ## Stack - Go — single static binary, no runtime dependencies - Standard library only — zero external dependencies ## Usage ```sh # Full audit (all checks) arcline-audit example.com # Run specific checks arcline-audit example.com --checks ssl,dns # JSON output arcline-audit example.com --json # Write to file arcline-audit example.com --out report.txt ``` ### Flags | Flag | Description | |---|---| | `--checks` | Comma-separated check groups: `ssl`, `http`, `dns`, `infra` (default: `all`) | | `--json` | Output as JSON instead of terminal format | | `--out` | Write report to a file instead of stdout | ## Checks | Group | What it checks | |---|---| | SSL/TLS | Certificate validity, expiry, chain completeness, TLS version, cipher suite warnings | | HTTP | Redirect chain (http→https), security headers (HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy), Server header disclosure, response time | | DNS | A/AAAA records, MX records, SPF, DKIM, DMARC, DNSSEC detection | | Infrastructure | CDN detection, common port probes (80, 443, 22, 3306, 5432) | ## Example output ``` $ arcline-audit example.com ── SSL ──────────────────────────────────────────────── [OK] valid certificate (2026-08-29) [OK] not self-signed [OK] certificate chain is complete [OK] TLS 1.3 [OK] cipher suite: TLS_AES_128_GCM_SHA256 ── HTTP ─────────────────────────────────────────────── [WARN] no HSTS header [WARN] Server header disclosed: cloudflare [OK] response time 34ms ── DNS ──────────────────────────────────────────────── [OK] A record: 104.20.23.154 [OK] MX records present (1) [OK] SPF record found [WARN] no DMARC record ── Infrastructure ───────────────────────────────────── [OK] CDN detected: Cloudflare ``` ## Build ```sh # Local build make build # Cross-compile for all platforms make release ``` This produces: - `arcline-audit-linux-amd64` - `arcline-audit-darwin-amd64` - `arcline-audit-windows-amd64.exe` ## Install ```sh sudo cp arcline-audit-linux-amd64 /usr/local/bin/arcline-audit sudo chmod 0755 /usr/local/bin/arcline-audit ``` ## License MIT — see [LICENSE](LICENSE).