Você está pedindo para escutar em sua porta local 22 e encaminhar conexões para a porta 8090 de um sistema remoto. Você não pode fazer isso, porque sua porta local 22 já está ocupada pelo seu servidor SSH local.
Acho que o que você está procurando é o encaminhamento remoto. Substituir -L 22:localhost:8090
por -R 8090:localhost:22
dirá ao host remoto para escutar na porta 8090 e encaminhar solicitações para seu servidor SSH.
Se você estiver deixando a conexão em execução para poder acessar mais tarde a partir de um site remoto, convém certificar-se de que a conexão não exceda o tempo devido à inatividade, adicionando as opções relevantes ( -o TCPKeepAlive=yes
ou -o ServerAliveInterval=30
)
Então você vai acabar com algo como:
ssh -N user@my_server -R 8090:localhost:22 -o ServerAliveInterval=30
Além disso, se um dos saltos de rede entre você e o servidor estiver inativo a qualquer momento, a conexão cairá apesar de qualquer opção KeepAlive que você especificar, então você pode querer adicionar este comando ao inittab, ou procurar no pacote daemontools ou o equivalente da sua distro, para que ele sempre inicie na inicialização e reiniciado quando sair por algum motivo além do desligamento do sistema (ou você pode executá-lo a partir de um script que circule infinitamente, mas o init ou daemontools são soluções mais limpas). p>