Overview
The Keychain is Netcatty’s centralized storage for SSH keys, certificates, and authentication identities. It provides a secure vault for managing credentials across all your hosts.Accessing the Keychain
- Click Keychain in the sidebar
- Or press
Cmd+Shift+K(Mac) /Ctrl+Shift+K(Windows/Linux)
SSH Keys
SSH keys are the foundation of secure authentication in Netcatty.Key Structure
Generating SSH Keys
Create new SSH key pairs directly in Netcatty.UI Workflow
- Navigate to Keychain
- Click Generate button
- Configure key settings:
- Label: Descriptive name (e.g., “Production Deploy Key”)
- Key Type: Select algorithm (ED25519 recommended)
- Key Size: Select bit length (RSA/ECDSA only)
- Passphrase: Optional but recommended
- Click Generate
- Netcatty creates the key pair using system crypto libraries
- ED25519 (Recommended)
- RSA
- ECDSA
Advantages:
- Highest security
- Fast operations
- Small key size
- New servers running OpenSSH 6.5+
- Modern cloud environments
- Any production deployment
- No key size selection needed (fixed at 256 bits)
Generated Key Example
Netcatty uses your system’s native SSH key generation libraries (via Electron backend) for maximum security.
Importing SSH Keys
Import existing keys from files or clipboard.Import Methods
- Paste Content
- File Upload
- Drag & Drop
- Click Import in Keychain
- Enter a Label
- Paste Private Key content
- (Optional) Paste Public Key
- (Optional) Paste Certificate
- Enter Passphrase if encrypted
- Click Save
Supported Formats
-
OpenSSH Format (modern, recommended)
-
PEM Format (legacy)
-
PKCS8 Format
Managing Keys
Viewing Keys
Grid View (default):- Visual cards showing key labels
- Type indicators (Key/Certificate)
- Quick actions on hover
- Compact rows
- More keys visible at once
- Sortable columns
Key Actions
View Details
Click a key to view:
- Full public key
- Key fingerprint
- Creation date
- Associated hosts
Edit
Modify:
- Label
- Private key content
- Public key
- Certificate
Export to Host
Automatically add public key to a remote server’s
~/.ssh/authorized_keysCopy Public Key
Copy public key to clipboard for manual distribution
Delete
Remove key from keychain (hosts using this key will prompt for re-selection)
Exporting Public Keys to Hosts
Netcatty can automatically deploy your public key to remote servers. Workflow:- Click on a key in Keychain
- Click Export to Host
- Select target host
- Configure export settings:
- Location: Directory (default:
.ssh) - Filename: Target file (default:
authorized_keys) - Script: Custom deployment script
- Location: Directory (default:
- Click Export and Attach
- Netcatty connects to the host (using existing credentials)
- Runs export script via SSH
- Default script:
- Automatically updates host to use this key for future connections
SSH Certificates
SSH certificates provide enhanced security and centralized management.Importing Certificates
- Click Import in Keychain
- Enter Label
- Paste Private Key
- Paste Certificate in the Certificate field
- Click Save
Certificate Structure
A certificate key includes:- Private key (same as regular SSH key)
- Certificate signed by a CA
- Certificate contains:
- Validity period
- Principals (allowed usernames)
- Extensions (permissions)
Using Certificates
The remote server must trust the CA that signed your certificate. This is configured in
/etc/ssh/sshd_config with TrustedUserCAKeys.Identities
Identities combine username and authentication method for reuse across hosts.Identity Structure
Creating Identities
- Navigate to Keychain
- Click the dropdown on Key filter
- Select New Identity
- Configure:
- Label: “Deploy User”
- Username: deploy
- Auth Method: Key
- SSH Key: Select from dropdown
- Click Save
Using Identities
Attach an identity to multiple hosts:- Update credentials in one place
- Enforce consistent authentication across server groups
- Simplify host configuration
Searching and Filtering
Search Bar
Filter keys by:- Label
- Key type
- Public key content
Filter Tabs
- Key: Generated and imported keys
- Certificate: Keys with certificates attached
- Generate new key
- Import key
- Create identity
Keyboard Shortcuts
| Action | Mac | Windows/Linux |
|---|---|---|
| Open Keychain | Cmd+Shift+K | Ctrl+Shift+K |
| Generate Key | (in dropdown) | (in dropdown) |
| Import Key | (in dropdown) | (in dropdown) |
| Search | Start typing | Start typing |
Security Best Practices
Key Generation
Key Generation
- Always use ED25519 for new keys unless compatibility requires RSA
- Use 4096-bit RSA keys minimum
- Never reuse keys across environments (dev/staging/prod)
Passphrase Protection
Passphrase Protection
- Always set passphrases on private keys
- Use strong, unique passphrases (20+ characters)
- Enable “Save Passphrase” only on secure, personal devices
Key Storage
Key Storage
- Keep private keys out of cloud storage
- Don’t commit keys to version control
- Use different keys for different purposes
Key Rotation
Key Rotation
- Rotate keys every 90-180 days
- Immediately rotate if compromised
- Remove old keys from authorized_keys
Troubleshooting
Key Format Not Recognized
Key Format Not Recognized
Solution: Convert to OpenSSH format:
Export to Host Fails
Export to Host Fails
Possible Causes:
- No existing authentication method configured
- Server doesn’t allow password auth or current key
- Configure password or another key for initial access
- Retry export
- Check SSH logs on server:
/var/log/auth.log
Passphrase Not Saving
Passphrase Not Saving
Solution:
- Ensure your OS keychain/credential manager is accessible
- Mac: Check Keychain Access app
- Windows: Check Credential Manager
- Linux: Ensure
libsecretis installed
Related Resources
Authentication
Configure authentication methods for hosts
Host Configuration
Advanced host settings and customization
