Protocols & PKIRecommended
Secure Shell (SSH-2)
Encrypted remote administration and file transfer
How it works
SSH-2 runs a key exchange (commonly ECDH with X25519) to set up an encrypted channel, verifies the server's host key, and then authenticates the user with a password or, preferably, a public key. The first connection to a server uses 'trust on first use': the client records the host key and warns if it later changes.
Status: SSH-2 with modern algorithms; SSH-1 is obsolete.
Strengths
- Encrypts the whole session including credentials
- Public-key authentication with Ed25519 keys is strong and convenient
- Supports secure tunnelling and file transfer (SFTP, SCP)
Weaknesses and known attacks
- Users who accept changed host key warnings expose themselves to man-in-the-middle attacks.
- Stolen or unprotected private keys grant silent access.
- The Terrapin attack (2023) showed a prefix-truncation weakness with certain cipher modes, fixed by a protocol extension.
Use it for
- Remote administration
- Secure file transfer
- Tunnelling
Don't use it for
- SSH-1
- Password authentication on internet-facing servers
Exam tip
SSH replaces Telnet, rlogin and FTP for administration. SFTP runs over SSH; FTPS is FTP over TLS.