Skip to main content
8

SSH_DISCONNECT_PROTOCOL_VERSION_NOT_SUPPORTED

DisconnectRFC 4253 §11.1

SSH_DISCONNECT_PROTOCOL_VERSION_NOT_SUPPORTED (8) is sent when the server does not support the SSH protocol version offered by the client. SSH-2.0 is the only current version; SSH-1.x is insecure and obsolete. Servers that have disabled SSH-1 compatibility will disconnect clients that offer SSH-1.

Code

8

Category

Disconnect

Standard

RFC 4253 §11.1

Description

SSH protocol version negotiation happens in the identification string exchange, before any SSH messages. Each side sends a version string of the form SSH-protoversion-softwareversion. SSH-2.0 is the current standard (RFC 4253). SSH-1.x is broken and insecure.

If a client connects with an SSH-1.x identification string and the server has disabled SSH-1 (which all modern servers should have), the server sends disconnect code 8. This disconnect also applies to any future SSH protocol versions: a server that does not support SSH-3.0 would send code 8 to a client offering only SSH-3.0.

In practice this disconnect is almost exclusively seen with extremely old SSH clients (pre-2000 vintage) or legacy embedded devices that have not been updated and only implement SSH-1.

Common Causes

  • Very old SSH client offering SSH protocol version 1.x
  • Legacy embedded device (router, switch, IoT) implementing SSH-1 only
  • SSH client configured to use SSH-1 via Protocol 1 directive