Não está claro o que você quer dizer com "túnel duplo". Parece que você está apenas falando sobre o uso do encaminhamento de porta SSH para permitir que o contratado acesse o AS / 400 através do computador "InsideLinuxServer".
-
Verifique se o SSH é permitido da Internet para o "InsideLinuxServer"
-
Crie uma credencial no "InsideLinuxServer" para o contratado usar. (Você pode querer aprofundar e impedir o acesso ao shell naquela máquina Linux para o contratado, desligar o SFTP, etc.)
-
Peça ao contratado que configure seu cliente SSH para encapsular uma porta local na porta 23 do AS / 400. Em "PuTTY" isso é feito no nó Tunnels do nó SSH do nó Connection das configurações. Eles adicionariam uma porta de origem como uma porta não usada em sua máquina (digamos "2300"), um destino do endereço IP ou nome do AS / 400 com um ": 23" acrescentado após ele e o adicionaria às portas encaminhadas. lista.
Após o contratante se conectar à máquina "InsideLinuxServer" com SSH, eles poderão TELNET para sua própria porta 2300 (no caso do meu exemplo). O PuTTY responderia à tentativa de conexão TCP e encaminharia o tráfego para o "InsideLinuxServer", que, por sua vez, estabeleceria uma conexão TCP com a porta 23 no AS / 400 e encaminharia o tráfego.
No que diz respeito a torná-lo "escalável", para esse número de clientes eu apenas escrevia instruções para eles sobre como configurar o PuTTY e enviá-los em seu caminho.
Para tornar as coisas mais seguras, você pode pensar em usar a autenticação de chave pública no servidor SSH, em vez de senhas. É um trabalho de configuração um pouco mais adiantado, mas é mais seguro do que usar senhas.