Skip to main content
7

SSH_DISCONNECT_SERVICE_NOT_AVAILABLE

DisconnectRFC 4253 §11.1

SSH_DISCONNECT_SERVICE_NOT_AVAILABLE (7) is sent when the client requests an SSH service that the server does not support or has disabled. After key exchange completes, the client sends SSH_MSG_SERVICE_REQUEST for a service name (typically ssh-userauth). If the server does not support that service, it responds with this disconnect.

Code

7

Category

Disconnect

Standard

RFC 4253 §11.1

Description

After completing SSH key exchange, the client must request an SSH service before it can proceed. The standard services are ssh-userauth (RFC 4252, for authentication) and ssh-connection (RFC 4254, for the connection layer). The client sends SSH_MSG_SERVICE_REQUEST with the service name, and the server either accepts with SSH_MSG_SERVICE_ACCEPT or rejects with SSH_MSG_DISCONNECT code 7.

This disconnect is uncommon with standard SSH clients because all servers support ssh-userauth. It is more likely to appear in non-standard SSH usage: custom SSH implementations, embedded SSH servers with limited service support, or SSH servers configured to only accept specific services.

A disconnect at this stage means authentication was never attempted – the server rejected the service before the client had a chance to present credentials.

Common Causes

  • Client requested a non-standard SSH service name not supported by the server
  • Embedded SSH server supporting only a subset of standard services
  • ssh-userauth service disabled on a restricted-function SSH server
  • Custom SSH implementation requesting a proprietary service name