Cert-Checker is a privacy-focused Go tool that monitors SSL/TLS certificates on domains and local files, analyzes expiration dates, and alerts users if any issues are detected. It offers both a powerful command-line interface for automation and an interactive web dashboard.
May 30, 2026 Version 1.4.0
-
Certificate Verification
- Hybrid Scanning: Supports remote domains (https://example.com) and local certificate files (.pem, .crt, .key).
- Chain Validation: Verifies certificate chains, detects self-signed certificates, and identifies missing intermediates.
- CI/CD Ready: Returns specific exit codes (0=OK, 1=Warning, 2=Error) for integration into pipelines.
-
Interactive Web Dashboard
- Real-Time Visualization: Responsive UI with Dark Mode support.
- Filtering: Filter by status, search by domain/issuer, and sort by expiration date.
- Auto-Refresh: Configurable background updates (e.g., every 15 mins) to keep data fresh.
-
Security & Privacy
- Local Storage: No external databases or cloud dependencies required.
- HTTPS Dashboard: Built-in support for self-signed or Let's Encrypt certificates to secure the dashboard connection.
-
Automation & Management
- Cron Job Manager: Built-in interactive CLI to create, list, and remove scheduled scans.
- Reporting: Exports detailed JSON reports with timestamps for archival or external processing.
- Save Certificates: Download valid certificates (optional)
git clone https://github.com/mrtoadie/go-check-cert.git
cd go-check-cert
go build -o cert-checkergo run .Install from AUR
yay -S cert-checker# Without HTTPS
./cert-checker -web
# With HTTPS and self-signed certificate
./cert-checker -web -cert ./certs/cert.pem -key ./certs/key.pemOpen http://localhost:8080 or https://localhost:8080 in your browser.
| Flag | Alias | Description |
|---|---|---|
| -a | -advanced | Show advanced certificate details |
| -f | -file | Path to a local .pem, .crt, .cer, or .key file |
| -c | -cron | Interactive Cron setup |
| -dl | -download | Download valid certificates to certs folder |
| -md | -markdown | Saves results in Markdown format |
| -ls | -list | List and manage Cron jobs |
| -l | -log | Show cron job log file |
| -ci | -ci-mode | CI/CD Mode (non-interactive, uses urls.txt) |
| -w | -web | Start web dashboard on localhost:8080 |
| -cert | Path to SSL certificate file (.pem/.crt) | |
| -key | Path to SSL private key file (.pem) | |
| -h | -help | Display help message |
Check a single certificate:
./cert-checker -f ./server.crtSet up cron job(s):
./cert-checker -cList active Cron jobs:
./cert-checker -lsThe tool automatically creates a configuration file on the first run.
Location: ~/.config/cert-checker/urls.txt
Format: One URL per line. Comments starting with # are supported.
Text Output (Default)
=== RESULTS ===
1. forum.linuxguides.de
Days: 44 | Valid: 26.02.26 → 27.05.26
Issuer: R12
------------------------------------
2. github.com
Days: 52 | Valid: 06.03.26 → 03.06.26
Issuer: Sectigo Public Server Authentication CA DV E36
------------------------------------
=== SUMMARY ===
OK: 0 | Warn: 2 | Exp: 0 | Err: 0JSON Output
{
"generated_at": "2026-05-03T14:47:42Z",
"total_count": 1,
"results": [
{
"url": "https://github.com",
"status": "OK",
"days_remaining": 180,
"is_chain_complete": true,
"key_algorithm": "RSA",
"key_size": 2048
}
]
}Interactive Menu
./cert-checker -cronOptions:
- Set up cron job – Create a new automated check
- List & manage jobs – View/delete existing jobs
- Exit – Quit the program
List Cron Jobs
./cert-checker -list
``
Output:
```bash
=== CERTIFICATE CHECK CRON JOBS ===
1. # cert-checker - 2026-05-03 14:47:42
0 8 * * * /home/user/cert-checker -ci >> /tmp/cert-check.log 2>&1
2. # cert-checker - 2026-05-03 15:00:00
0 */6 * * * /home/user/cert-checker -ci >> /tmp/cert-check.log 2>&1
Total: 2 job(s) found.- Run ./cert-checker -list
- Select "Delete individual jobs"
- Mark jobs with Spacebar
- Confirm with Enter
The input is interactive and automatically detects the correct format.
-
Press Enter to use the default list of URLs (~/.config/cert-checker/urls.txt)
-
To check individual URLs: github.com or github.com, ubuntu.com, example.org
-
Check local certificate file: '~/github.pem'
-
Certificate files can also be checked using a flag: cert-checker --file ~/github.pem
Certificate files with the following extensions work: .pem, .cer, .crt, .key
✅ Solus
✅ WSL2 (Ubuntu)
go-check-cert is licensed under the MIT License.


