(o erro que você denuncia é indicativo de um problema na etapa 1 abaixo)
Antes de tudo, faça como mencionado acima: adicione GatewayPorts yes
em / etc / ssh / sshd_config
e mude sua linha ssh -R para
ssh -vvv -R *:9300:localhost:22 user@middleserver
(remova -vvv depois que conseguirmos isso funcionar)
* Definir o endereço de ligação como * encaminhará conexões em qualquer interface e não apenas em loopback ('lo' que inclui 127.0.0.1 == localhost). ifconfig
lista as interfaces ... ou seja, eth0, lo e wlan0. *
Se isso não funcionar, solucione os problemas:
Etapa 1) Verifique se você tem permissão para ssh em sua máquina remota:
Na própria máquina remota, tente:
ssh localhost
Se a conexão for recusada, você deverá ativar o ssh nessa máquina.
Se isso for bem-sucedido, digite ifconfig
e anote o endereço "inet 192.168.xxx.yyy" local.
Step2) tente o SSH a partir da máquina local
Em seguida, vá para uma máquina na mesma rede local que sua máquina remota e tente ssh em sua máquina remota: ssh [email protected]
Se isso não der certo, verifique o firewall da sua máquina remota (veja abaixo).
Se isso for bem sucedido
Passo 3) Tente o ssh da máquina intermediária
faça o login na máquina intermediária e tente uma conexão ssh diretamente de lá. No caso acima, você executou ssh -R *:9300:localhost:22 middleuser@middleserver
na máquina remota, portanto, é necessário efetuar login na máquina intermediária e executar: ssh remoteuser@localhost -p 9300
Se isso for bem sucedido, o problema pode estar no firewall do seu servidor:
Antes de mexer com o iptables, verifique se você tem um gerenciador de firewall em uso. Por exemplo, verifique se "ufw" está em uso: sudo ufw status
. Seria muito mais fácil usar o ufw do que mexer com o iptables diretamente.
iptables -L
e verifique se a porta 9300 está aberta (isso envolverá alguma pesquisa do iptables .. NÃO é simples). Cheat: Se a porta 9300 estiver listada ao lado de http e de maneira semelhante, verifique se http está aberto. Se 9300 estiver listado abaixo, ele pode não ser alcançado se uma diretiva "deny all" for listada antes dela.
Também pode ser listado como uma porta nomeada. cat /etc/services | grep 9300
, no entanto, não traz um nome neste caso
Etapa 4) Tente seu login novamente:
ssh remoteuser@middleserver -p 9300