Como configurar uma interface tun no Linux para o encaminhamento de porta SSH?

1

Estou tentando encaminhar a porta 139 de uma máquina Windows para o meu servidor SSH do Ubuntu em uma interface tun com o endereço IP 10.0.0.1.

Isso é para que eu possa acessar os compartilhamentos do windows na máquina no meu servidor Ubuntu, através do túnel reverso.

Eu posso encaminhar portas para 127.0.0.1, mas não para 10.0.0.1.

No Windows, estou usando o cliente Tunnelier ssh.

No meu servidor Ubuntu, a seguinte mensagem é impressa em auth.log:

Received disconnect from 124.109.51.154: 11: Server denied request for client-side server-2-client forwarding on 10.0.0.1:139.

Até agora eu tentei as seguintes configurações:

GatewayPorts yes
PermitTunnel yes
AllowTcpForwarding yes 

no arquivo / etc / ssh / sshd_config, mas não funcionou.

Eu configurei o tun assim:

sudo tunctl -t loc_0 -u myusername
sudo ifconfig loc_0 inet 10.0.0.1 netmask 255.255.255.0 up

As configurações no cliente ssh Tunneler não devem ser importantes, pois posso encaminhar a porta 139 com êxito para o Microsoft Loopback Adapter em uma máquina Windows que esteja executando o servidor WinSSHD.

Versões:   Windows é o XP SP3,   O Ubuntu é 10,10.

Atualização:

Eu tentei encaminhar a porta para um número maior que 1024 mencionando o endereço IP do tun, e ela conectou com sucesso mas o encaminhamento foi feito em 127.0.0.1 em vez do endereço IP do tun 10.0.0.1.

Portanto, agora há dois problemas separados ao conectar a partir da máquina Windows:

1) Encaminhamento em portas com menos de 1024 provavelmente está sendo negado. Como podemos permitir isso no servidor?

2) O encaminhamento é feito apenas no 127.0.0.1, mesmo se eu mencionar 10.0.0.1, que é o endereço IP do tun.

Outra tentativa: Eu também tentei encaminhar a porta 22 de uma máquina Linux para a porta do tun 55567. Ela mostrou sucesso. Mas quando tentei ssh para essa porta usando ambos os endereços locais, na máquina Linux em sua exibição de depuração, recebi o erro Connection failed: no route to host ao usar 127.0.0.1 para conectar e simplesmente Connection refused ao usar o endereço IP do tun.

Assim, o tun não está recebendo a porta encaminhada, independentemente de nos conectarmos a partir de um cliente Windows ou de um cliente Linux.

    
por sarshad 16.04.2011 / 00:15

2 respostas

1

Em relação ao < 1024, você só pode fazer isso usando o root para o túnel ssh:

link

Note

Setting up port forwarding to listen on ports below 1024 requires root level access.

Em relação a 127.0.0.1, você provavelmente precisará usar '-g' em sua configuração ssh:

 -g      Allows remote hosts to connect to local forwarded ports.
    
por 29.08.2011 / 04:26
0

O que é isso:

sudo ifconfig eth0:0 10.0.0.1 up
sudo ssh -g -L 139:10.0.0.1:139 user@sambahost
    
por 13.12.2011 / 16:57