GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo salgo de una conexión SSH?

Respuesta corta:escribe exit

Sin embargo, si eso no funciona...

Carácter de escape SSH y secuencia de desconexión

La mayoría de las implementaciones de SSH implementan un carácter de escape para las sesiones interactivas, similar al Ctrl-] de telnet. combinación. El carácter de escape SSH predeterminado es ~ , introducido al principio de una línea.

Si desea finalizar una sesión interactiva de OpenSSH que está atascada y no se puede salir ingresando exit o Ctrl D en un caparazón en el lado remoto , puede ingresar ~ seguido de un punto . . Para asegurarse de ingresar el carácter de escape al comienzo de una línea de entrada, primero debe presionar Intro. Por lo tanto, la siguiente secuencia terminará en la mayoría de los casos una sesión SSH:

Entrar ~ .

Otras secuencias de escape

OpenSSH, por ejemplo, ofrece otras secuencias de escape además de ~. . Ingresando ~? durante una sesión debe darle una lista. Algunos ejemplos:

  • ~ siguió Ctrl-Z suspende la sesión,
  • ~& lo pone directamente en segundo plano,
  • ~# proporciona una lista de conexiones reenviadas en esta sesión.
  • Si desea simplemente ingresar una tilde al comienzo de una línea, debe duplicarla:~~ .

El carácter de escape se puede cambiar usando la opción de línea de comando -e . Si establece el valor especial -e none , el escape está deshabilitado y la sesión es totalmente transparente.

Consulte también la página de manual de OpenBSD sobre ssh (a la que se hace referencia en www.openssh.org) en -e opción de línea de comando


¿Cómo salgo de una conexión SSH?

Dos formas:

  • normalmente se cerrará la sesión de shell, por ejemplo:
    • con el comando integrado de shell, exit , seguido de Intro , o
    • Ctrl -d , (fin de archivo)
  • en el caso de que tenga una mala conexión y el shell no responda, presione Enter tecla, luego escriba ~. y ssh debería cerrarse inmediatamente y volver a la línea de comandos.

La primera opción debería ser intuitiva, pero ¿cómo conocemos la última opción?

Podríamos aprender esta información de una lectura cuidadosa de la página del manual.

$ man ssh

nos da la documentación de SSH, que tiene la siguiente sección sobre caracteres de escape:


ESCAPE CHARACTERS
     When a pseudo-terminal has been requested, ssh supports a number of
     functions through the use of an escape character.

     A single tilde character can be sent as ~~ or by following the tilde by
     a character other than those described below.  The escape character
     must always follow a newline to be interpreted as special.  The escape
     character can be changed in configuration files using the EscapeChar
     configuration directive or on the command line by the -e option.

     The supported escapes (assuming the default ‘~’) are:

     ~.      Disconnect.

     ~^Z     Background ssh.

     ~#      List forwarded connections.

     ~&      Background ssh at logout when waiting for forwarded connection
             / X11 sessions to terminate.

     ~?      Display a list of escape characters.

     ~B      Send a BREAK to the remote system (only useful if the peer sup‐
             ports it).

     ~C      Open command line.  Currently this allows the addition of port
             forwardings using the -L, -R and -D options (see above).  It
             also allows the cancellation of existing port-forwardings with
             -KL[bind_address:]port for local, -KR[bind_address:]port for
             remote and -KD[bind_address:]port for dynamic port-forwardings.
             !command allows the user to execute a local command if the
             PermitLocalCommand option is enabled in ssh_config(5).  Basic
             help is available, using the -h option.

     ~R      Request rekeying of the connection (only useful if the peer
             supports it).

     ~V      Decrease the verbosity (LogLevel) when errors are being written
             to stderr.

     ~v      Increase the verbosity (LogLevel) when errors are being written
             to stderr.

No hay nada especial en exit a ssh, es solo una forma de salir del shell, lo que resulta en el cierre de la sesión ssh:

$ type exit
exit is a shell builtin
$ help exit
exit: exit [n]
    Exit the shell.
    
    Exits the shell with a status of N.  If N is omitted, the exit status
    is that of the last command executed.

Citar y citar fuentes de referencia es proporcionar más evidencia de lo que de otro modo sería una afirmación de hecho tal vez demostrable, así como informar al usuario dónde se puede almacenar información más relevante.

Quiere saber que está haciendo lo correcto desde el punto de vista semántico, además de saber que funciona.

No desea aprender a invocar como característica algo que está documentado como un error y luego "arreglado". Se seguirá admitiendo hacer lo semánticamente correcto.


¿Quieres salir del shell SSH?

Puedes escribir exit y pulsa Intro , o use Ctrl +D


Linux
  1. Cómo aumentar el tiempo de espera de la conexión SSH

  2. Cómo comprobar la velocidad de su conexión ssh

  3. ¿Cómo recuperar/matar una sesión Ssh después de perder la conexión?

  4. ¿Cómo salir si falla un comando?

  5. SSH:cómo incluir el comando -t en el archivo ~/.ssh/config

Cómo reparar el error de conexión SSH rechazada

Cómo habilitar SSH en Ubuntu 18.04

Cómo generar una clave SSH en Windows 10

Cómo habilitar SSH en Ubuntu 20.04

Cómo cambiar el puerto SSH en VPS

Cómo configurar una conexión MySQL remota segura