Skip to content

tawseo/Terminium

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Terminium

A self-hosted, open-source alternative to Termius for SSH connection management.

Features

  • πŸ–₯️ Cross-platform: Windows, macOS, and Linux support
  • πŸ” Self-hosted: Run your own Debian-based server
  • πŸ”‘ Certificate Authentication: Secure key-based authentication
  • πŸ“ ICMSF Files: Import/Export encrypted connection profiles
  • πŸ’Ύ Encrypted Storage: Secure local credential storage
  • 🎨 Modern UI: Clean interface inspired by Termius
  • πŸ”Œ SSH Management: Full-featured SSH client with terminal emulation

Architecture

Server (Debian)

  • OpenSSH server with enhanced security
  • Connection management API
  • Certificate authority for client authentication
  • User management system

Client (Cross-platform Desktop App)

  • Built with Electron + React + TypeScript
  • Terminal emulation with xterm.js
  • SSH2 protocol support
  • AES-256 encryption for local data
  • ICMSF (Import Connection Mothership Server File) support

Quick Start

Server Setup (Debian/Ubuntu)

cd server
sudo ./setup.sh

Client Installation

macOS

See macOS Quick Start Guide or Complete macOS Installation

Quick install:

  1. Download latest .dmg for your Mac (Intel/Apple Silicon/Universal)
  2. Open DMG and drag to Applications
  3. Launch from Applications folder

From Source:

cd client
npm install
npm run dist:mac        # All architectures
npm run dist:mac:intel  # Intel only
npm run dist:mac:arm    # Apple Silicon only

Windows / Linux

From Release: Download the latest release for your platform from the releases page.

From Source:

cd client
npm install
npm run build
npm run dist:win    # Windows
npm run dist:linux  # Linux

First-Time Setup

Option 1: New Server Connection

  1. Launch Terminium
  2. Create username and password
  3. Enter your server IP address
  4. Follow the setup wizard to:
    • Install dependencies
    • Generate certificates
    • Configure authentication
    • Enable encryption

Option 2: Import Existing Configuration

  1. Launch Terminium
  2. Select "Import Connection"
  3. Choose your .icmsf file
  4. Enter your credentials to decrypt

ICMSF File Format

ICMSF (Import Connection Mothership Server File) is a military-grade encrypted file format containing:

  • Server IP address
  • Connection ports
  • Authentication certificates
  • User credentials (encrypted)

File Extension: .icmsf Encryption: AES-256-GCM with enhanced security Key Derivation: PBKDF2-HMAC-SHA512 (600,000 iterations) Additional Security: HMAC-SHA512 integrity verification, gzip compression Format: Versioned binary format

See ICMSF Security Specification for complete details.

Development

Prerequisites

  • Node.js 18+
  • npm or yarn
  • For server: Debian 11+ or Ubuntu 20.04+

Build Client

cd client
npm install
npm run dev        # Development mode
npm run build      # Production build
npm run dist       # Create distributable

Run Server

cd server
npm install
npm start

Security Features

Client Security

  • βœ… Military-grade AES-256-GCM encryption (ICMSF files)
  • βœ… PBKDF2-HMAC-SHA512 key derivation (600k iterations)
  • βœ… Dual integrity verification (GCM + HMAC-SHA512)
  • βœ… Encrypted ICMSF files with compression
  • βœ… Secure key storage (OS keychain integration)
  • βœ… File format versioning for forward compatibility
  • βœ… Cryptographically secure random generation

Server Security

  • βœ… Certificate-based SSH authentication only
  • βœ… Password authentication disabled by default
  • βœ… LUKS2 full disk encryption (AES-XTS-512, Argon2id)
  • βœ… Encrypted swap and home directories
  • βœ… TPM2 integration for automatic unlock
  • βœ… UFW firewall with fail2ban
  • βœ… Multiple LUKS key slots (recovery options)
  • βœ… Secure key management and backup tools

Architecture

  • βœ… Defense-in-depth security model
  • βœ… Multiple encryption layers (client + server)
  • βœ… Compliance ready (PCI-DSS, HIPAA, GDPR)
  • βœ… NSA approved algorithms (AES-256)

License

MIT License - See LICENSE file for details

Contributing

Contributions are welcome! Please read CONTRIBUTING.md for guidelines.

Roadmap

  • SFTP file transfer
  • Port forwarding
  • Snippet management
  • Team collaboration features
  • Mobile apps (iOS/Android)
  • Dark/Light theme customization
  • Multi-factor authentication

Support

For issues and questions, please use the GitHub issue tracker.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors