Blog

SSH, Linux, and production operations — page 21

Practical runbooks for servers, containers, databases, cloud hosting, incident response, and safe AI-assisted operations.

SSH key already in use

A service rejects a public key because that exact identity is already attached to another account, repository, or ownership boundary.

The Tryssh team · July 22, 2026 →

Ed25519 or RSA SSH key

The user needs a new key but must choose an algorithm that the client, server, policy, and recovery process all support.

The Tryssh team · July 22, 2026 →

Hashed SSH known_hosts entries

The known_hosts file hides hostnames with keyed hashes, making manual searches confusing while preserving host-key verification.

The Tryssh team · July 22, 2026 →

SSH known_hosts for a custom port

A host on a nondefault port is stored as a bracketed host-and-port identity, so ordinary hostname removal or lookup misses it.

The Tryssh team · July 22, 2026 →

Fix SSH error in libcrypto

The client cannot parse the private key material it was given, often after a CI secret lost line breaks or a key format changed.

The Tryssh team · July 22, 2026 →

Lost SSH private key recovery

The private key is missing or unreadable; because private keys cannot be reconstructed from public keys, access must be recovered through another trusted path.

The Tryssh team · July 22, 2026 →

SSH MaxSessions limit reached

One authenticated transport cannot open another shell, command, subsystem, or forwarded session because its channel limit is exhausted.

The Tryssh team · July 22, 2026 →

SSH MFA prompt missing

The expected TOTP, push, or broker challenge never appears because client methods, sshd AuthenticationMethods, PAM, or non-interactive execution do not align.

The Tryssh team · July 22, 2026 →

SSH multiplexing stale socket

A reused ControlMaster connection or control socket points to dead state, the wrong target, or credentials that should no longer be shared.

The Tryssh team · July 22, 2026 →

SSH PAM authentication failure

Sshd reaches PAM, but one account, policy, module, or session step denies or aborts the login.

The Tryssh team · July 22, 2026 →

SSH permission denied (publickey)

The network connection succeeds, but the server rejects every public key the client offers.

The Tryssh team · July 22, 2026 →

SSH PKCS#11 smartcard not working

The SSH client or agent cannot load, enumerate, or use a key through the intended PKCS#11 provider.

The Tryssh team · July 22, 2026 →

SSH port forwarding not working

SSH authenticates, but the local, remote, or dynamic forwarding endpoint cannot carry the expected application traffic.

The Tryssh team · July 22, 2026 →

SSH post-quantum key exchange warning

A current OpenSSH client warns that the connection negotiated only classical key exchange instead of a hybrid post-quantum method.

The Tryssh team · July 22, 2026 →

SSH ProxyJump not working

The client cannot complete one of the distinct hops from local machine to bastion to target.

The Tryssh team · July 22, 2026 →

SSH disconnects during rekey

A long-lived or high-volume session fails when the transport rotates keys and one peer mishandles rekey protocol behavior.

The Tryssh team · July 22, 2026 →

SSH remote port forwarding denied

Authentication succeeds, but the server refuses or cannot bind the requested -R listening endpoint.

The Tryssh team · July 22, 2026 →

SSH root login denied

The network and SSH service work, but direct root authentication is prohibited by policy, key restrictions, cloud image defaults, or account state.

The Tryssh team · July 22, 2026 →

Rsync over SSH exit code 23

Rsync completed only a partial transfer because at least one file, attribute, path, or remote operation failed.

The Tryssh team · July 22, 2026 →

SCP legacy protocol compatibility

Modern scp uses SFTP by default, but an older server or unusual shell expects legacy SCP behavior and fails differently.

The Tryssh team · July 22, 2026 →

SCP no such file or directory

The copy command resolves a source or destination on a different side, shell, home directory, or protocol than the user expects.

The Tryssh team · July 22, 2026 →

SFTP chroot ownership error

An internal-sftp account authenticates but sshd refuses the chroot because a path component is writable or owned by an unsafe identity.

The Tryssh team · July 22, 2026 →

SFTP or SCP fails over SSH

Interactive SSH works, but file transfer fails because its subsystem, path, permissions, shell output, or protocol assumptions differ.

The Tryssh team · July 22, 2026 →

SSH agent not working

A key exists, but the current process cannot reach the intended agent or the agent does not hold the expected identity.

The Tryssh team · July 22, 2026 →