Túnel reverso SSH do arquivo de configuração

Túnel reverso SSH do arquivo de configuração

Estou procurando uma diretiva de configuração do cliente ssh como LocalForwardessa que funcione como -Lparâmetro CLImaspara o -Rparâmetro

DRdetalhes completos do problema

Os dados:

repoServer -> myComputer -> NAT -> stagingServer

Eu tenho um servidor de repositório git local que não está exposto à Internet e um servidor de teste remoto no qual preciso implantar meu repositório.

Para fazer isso, eu ssh no stagingServer remoto com um soquete reverso.

Configuração atual parameucomputador:

Arquivo:~/.ssh/config

Host StagingServer
  Hostname staging.acme.com
  User username
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_username
  ForwardAgent yes

em que corro: ssh StagingServer -R 8022:repository.local:22

Configuração atual paraservidor de teste:

Arquivo:~/.ssh/config

Host repository
  Hostname localhost
  User git
  Port 8022
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_deployer

no qual posso executar: git clone git@repository:myProject.git

E tudo funciona bem, mas... finalmente

A questão:

É possível especificar no arquivo de configuração do cliente ssh (~/.ssh/config) para abrir o túnel reverso para que eu não precise adicionar-R 8022:repository.local:22

Responder1

Obviamente o que você está procurando é RemoteForward, você pode encontrar o específico no documento ssh_config ...

Documentação:https://linux.die.net/man/5/ssh_config (Pesquise por RemoteForward). É autoexplicativo.

Avançar Remoto

Especifica que uma porta TCP na máquina remota seja encaminhada pelo canal seguro para o host e porta especificados da máquina local. O primeiro argumento deve ser [bind_address:]port e o segundo argumento deve ser host:hostport. Os endereços IPv6 podem ser especificados colocando-os entre colchetes ou usando uma sintaxe alternativa: [bind_address/]port e host/hostport. Vários encaminhamentos podem ser especificados e encaminhamentos adicionais podem ser fornecidos na linha de comando. As portas privilegiadas podem ser encaminhadas somente ao efetuar login como root na máquina remota.

Então a configuração parameucomputadortorna-se:

Arquivo:~/.ssh/config

Host StagingServer
  Hostname staging.acme.com
  User username
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_username
  ForwardAgent yes
  RemoteForward 8022 repository.local:22

informação relacionada