Esta dica é para quando você tem uma sessão SSH em execução, mas se esqueceu de iniciar o encaminhamento de porta pela conexão. Normalmente, as pessoas fecham a conexão e criam uma nova. No entanto, existe uma alternativa.
Em sua conexão existente, simplesmente digite <enter>~C
para abrir um console com seu cliente SSH local (não o servidor). O console fornecido aceita algumas das ssh
opções de comandos, incluindo -R
, -L
.
Então, por exemplo, se eu quisesse acessar repentinamente algum serviço em execução na porta 4321 em minha máquina local a partir do servidor, eu poderia digitar <enter>~C-R 1234:localhost:4321<enter>
e imediatamente teria acesso a esse recurso do servidor localhost:4321
(que é o do servidor localhost
).
~
(til) é o padrão do SSH EscapeChar
. Você pressiona <enter>
primeiro para limpar o buffer, o ~
caractere de escape e qualquer uma de uma série de opções.
Por exemplo, a lista completa de opções que o cliente da minha versão do OpenSSH suporta é (obtida com <enter>~?
):
Supported escape sequences:
~. - terminate connection (and any multiplexed sessions)
~B - send a BREAK to the remote system
~C - open a command line
~R - Request rekey (SSH protocol 2 only)
~^Z - suspend ssh
~# - list forwarded connections
~& - background ssh (when waiting for connections to terminate)
~? - this message
~~ - send the escape character by typing it twice