Sobald der OpenSSH Server die Identität des Benutzers akzeptiert hat (siehe hierzu auch Kapitel OpenSSH Abschnitt „Login-Prozess“ im Handbuch „interNet Services Administratorhandbuch“), führt der Server entweder das aktuelle Kommando auf dem fernen Rechner aus oder er stellt dem Benutzer die normale Shell des fernen Rechners zur Verfügung. Dabei wird die gesamte Kommunikation mit dem remote ausgeführten Kommando bzw. mit der remote Shell automatisch verschlüsselt.
Folgende Fälle sind zu unterscheiden:
Wenn kein Pseudo-Terminal (Pseudo tty) zugewiesen wurde, ist die Session transparent und kann für den sicheren Transfer binärer Daten verwendet werden.
Wenn ein Pseudo-Terminal (Pseudo tty) zugewiesen wurde (normales Login), kann der Benutzer Escape Characters verwenden (siehe nachfolgender Abschnitt „Escape Characters“).
Auf den meisten Systemen führt das Deaktivieren der Escape Characters zu einer transparenten Session, auch wenn ein Pseudo-tty verwendet wird. (Die Verwendung von Escape Characters wird mit der Option EscapeChar in der Client-Konfigurationsdatei ssh_config gesteuert.)
Die Session wird beendet, wenn die Kommandoausführung oder die Shell auf dem fernen Rechner beendet werden und alle TCP/IP-Verbindungen beendet sind. Der Exit Status des remote ausgeführten Programms wird als Exit Status von ssh zurückgeliefert.