A collection of deterministic, audit‑transparent network management and monitoring tools used across Linktech Engineering infrastructure.
Each tool is designed with:
- Predictable, reproducible behavior
- Strict output contracts
- Clear operational modes
- Minimal external dependencies
- Compatibility with Nagios/Icinga and standalone system use
A deterministic TLS certificate inspection and policy enforcement tool with:
- JSON, verbose, and Nagios output modes
- TLS version and cipher extraction
- SAN, issuer, signature algorithm, and key metadata
- AIA chain reconstruction
- OCSP metadata extraction
- Expiration thresholds and policy enforcement
- Deterministic JSON schema for automation
- Clean, noise‑free CLI parser and help output
A deterministic HTTP/HTTPS inspection and content‑validation tool with:
- JSON, verbose, and Nagios output modes
- TLS‑aware request pipeline with handshake detection
- HTTP status, headers, content‑type, and HTML body capture
- Backend fingerprinting and backend enforcement
- Content‑type and HTML presence rules
- Deterministic JSON schema for automation
- Clean, noise‑free CLI parser and help output
- Nagios‑aware severity merging (CRITICAL > WARNING > UNKNOWN > OK)
| Project | Language | Status | Description |
|---|---|---|---|
| check_cert.py | Python | 🟢 Stable | TLS certificate inspection, metadata extraction, and policy enforcement |
| check_html.py | Python | 🟢 Stable | HTTP/HTTPS inspection, content validation, and backend fingerprinting |
| check_interfaces.py | Python | 🟡 Under Construction | Network interface state, speed, and attribute monitoring |
The docs/ directory contains the full documentation suite for all tools:
- Installation:
docs/Installation.md - Usage Guide:
docs/Usage.md - Operation Guide:
docs/Operation.md - Enforcement Model:
docs/Enforcement.md - Metadata Schema:
docs/Metadata_Schema.md - Roadmap:
docs/roadmap.md
Each document has a single responsibility:
| Document | Purpose |
|---|---|
| Installation | How to install and run the tools |
| Usage | CLI flags, examples, Nagios integration |
| Operation | Runtime behavior, exit codes, troubleshooting |
| Enforcement | Policy engine, rule semantics, failure behavior |
| Metadata Schema | Canonical JSON structure for automation |
| Roadmap | Planned enhancements and future tools |
NMS_Tools follows Linktech Engineering’s deterministic engineering principles:
- No hidden state
- No ambiguous output
- No silent failures
- Audit‑transparent behavior
- Predictable exit codes
- Clean separation between human and machine output modes
Each tool is built to be reliable in both interactive and automated environments.
NMS_Tools enforces a small set of suite‑wide operational rules to ensure deterministic, operator‑grade behavior:
- All tools accepting -H require the hostname to be resolvable via the system resolver (DNS, /etc/hosts, or equivalent).
- Unresolvable hosts must fail fast with a deterministic error message.
- In Nagios mode, tools must exit UNKNOWN with a single clean line.
- No network operations are attempted without a resolvable target.
- All tools validate input before execution and fail deterministically on invalid parameters.
Active development.
See docs/roadmap.md for planned enhancements and upcoming tools in the suite.
Clone the repository:
git clone https://github.com/LinktechEngineering/NMS_Tools.git
cd NMS_ToolsRun a certificate check:
./check_cert.py -H example.comRun an HTML check:
./check_html.py -H example.comNMS_Tools is a collection of deterministic, audit‑transparent monitoring tools used across Linktech Engineering infrastructure.
Each tool follows the same engineering principles:
- Predictable, reproducible behavior
- Strict output contracts
- Noise‑free CLI design
- Clear separation between human and machine output modes
- Minimal external dependencies
- Compatibility with Nagios/Icinga and standalone system use
Current tools in the suite:
- check_cert.py — TLS certificate inspection and policy enforcement
- check_html.py — HTTP/HTTPS inspection and content‑validation
Additional tools will be added as the suite evolves.
See docs/roadmap.md for planned enhancements.
Contributions are welcome.
All tools in the suite follow the same design principles:
- Deterministic behavior
- Clear, documented output modes
- Minimal dependencies
- Operator‑grade clarity
- Stable JSON schemas
Before submitting a pull request:
- Review the existing documentation in
docs/ - Ensure new code follows the deterministic engineering model
- Include or update documentation for any new flags, behaviors, or metadata
- Keep CLI help output clean, grouped, and noise‑free
- Maintain compatibility with Python 3.6+
For major changes, open an issue first to discuss the design and approach.
These tools are part of the broader Linktech Engineering ecosystem but are not included in the NMS_Tools repository:
- BotScanner — Network flow and host inspection framework (Python)
- licensegen — Deterministic license generator (Rust)
- rust_logger — Structured logging library for Rust applications