SSH Keys
KoreShell has a built-in SSH key manager — generate, store, and deploy keys to servers without touching the terminal.
Overview
There are two types of keys in KoreShell:
| Type | Description |
|---|---|
| Local keypairs | Keys generated by or imported into KoreShell — stored in the vault |
| Authorized keys | Public keys installed on a server's ~/.ssh/authorized_keys |
Generating a New Key
- Go to Settings → SSH Keys → Generate Key (or click + GENERATE in the SSH Keys manager)
- Choose:
| Option | Description |
|---|---|
| Type | Ed25519 (recommended) or RSA 4096 |
| Name | Label for this key |
| Passphrase | Optional — stored encrypted in vault |
- Click GENERATE — the keypair is created and stored locally
The public key is immediately available to copy. Use it to authorize access on any server.
Importing an Existing Key
Click IMPORT and paste the private key (PEM or OpenSSH format), or use the file picker to load from disk.
Supported formats:
-----BEGIN OPENSSH PRIVATE KEY-----(Ed25519, ECDSA, RSA)-----BEGIN RSA PRIVATE KEY-----(RSA PKCS#1)-----BEGIN EC PRIVATE KEY-----(ECDSA)
If the key has a passphrase, enter it when prompted — it's stored encrypted in the vault.
Deploying a Key to a Server
After generating or importing a key:
- Open the SSH Keys tab on a connected server
- Select the local key to deploy
- Select the remote user (default: the SSH user for this server)
- Click AUTHORIZE — KoreShell appends the public key to
~/.ssh/authorized_keyson the server and sets correct permissions (600)
This is equivalent to running ssh-copy-id but without leaving KoreShell.
Viewing Authorized Keys on a Server
The SSH Keys tab on a connected server lists all public keys in ~/.ssh/authorized_keys for the current user, plus any other users you have permission to inspect.
You can REVOKE any key from this list — KoreShell removes the matching line from authorized_keys.
Using a Key for Server Auth
When adding or editing a server, set Auth Method → SSH Key and select the key from the dropdown. KoreShell uses the stored private key automatically on every connection.
Key Security
- Private keys are stored in the AES-256-GCM vault — never written to disk in plaintext
- On macOS, the vault master key is stored in the system Keychain
- Keys are never transmitted to any server or network endpoint
- Private key data is zeroed from memory after the SSH handshake completes
Exporting a Key
Right-click a key in the manager → Export Private Key to save to a file. You'll be prompted to confirm — the file is written in OpenSSH format.
Exported key files are unencrypted. Protect them with appropriate file permissions (chmod 600) and do not share them.