Skip to content

Security Architecture

SSH-KLM is designed with security as a core principle.

┌─────────────────────────────────────────┐
│ Network Security │
│ TLS 1.3 │ mTLS │ Firewall │ VPN │
├─────────────────────────────────────────┤
│ Authentication Layer │
│ JWT │ API Keys │ SSO │ MFA │
├─────────────────────────────────────────┤
│ Authorization Layer │
│ RBAC │ Policies │ Attribute-based │
├─────────────────────────────────────────┤
│ Data Protection │
│ Encryption at Rest │ Key Management │
├─────────────────────────────────────────┤
│ Audit & Monitoring │
│ Logging │ SIEM │ Alerting │
└─────────────────────────────────────────┘
ConnectionProtocolCipher
Client → APITLS 1.3AES-256-GCM
Agent → ServermTLSAES-256-GCM
Internal servicesTLS 1.2+AES-256
DataEncryption
SSH Private KeysAES-256-GCM
DatabaseTDE (Transparent Data Encryption)
BackupsAES-256 + GPG
// JWT token structure
{
"sub": "user@example.com",
"iat": 1704528000,
"exp": 1704531600,
"roles": ["operator"],
"permissions": ["keys:read", "keys:rotate"]
}
  • mTLS with client certificates
  • Certificate rotation every 90 days
  • Certificate pinning supported
RolePermissions
ViewerRead hosts, keys
Operator+ Trigger discovery, rotation
Admin+ Manage policies, users
Super Admin+ System configuration
  1. Generation: Keys generated using cryptographically secure RNG
  2. Storage: Encrypted with envelope encryption
  3. Transmission: Only over encrypted channels
  4. Deletion: Secure wipe with multiple passes

All actions logged with:

  • Timestamp (UTC)
  • Actor identity
  • Action performed
  • Resource affected
  • Source IP
  • Result (success/failure)

SSH-KLM supports compliance with:

  • SOC 2 Type II
  • PCI-DSS
  • HIPAA
  • GDPR