1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

SSH Tunneling

Discussão em 'Dúvidas e Suporte—Internet, Redes, Segurança' iniciada por hgdn, 30 de Novembro de 2007. (Respostas: 8; Visualizações: 2829)

  1. hgdn

    hgdn Power Member

    Boas,

    Tenho na minha rede uma unica máquina que liga-se directamente há internet. Sem filtros nem proxies. Todas as outras necessitam de proxy para poder aceder. Instalei nessa máquina um servidor de SSH e na minha máquina cliente (uma das que necessita de proxy), com o PuTTy, acedo lá sem qualquer problemas. Contudo, apesar de no PuTTy dizer que quero um tunel dinamico na porta 1080 (por exemplo), quando vou ao firefox e digo que quero uma ligação de SOCKS para localhost:1080 ele não acede à net pela máquina que tem o SSH Server, como eu pensava que faria. O erro diz apenas para corrigir as minhas configurações.

    Conclusão... Ou estou a fazer alguma coisa mal ou será que preciso tb de uma proxy na propria máquina em que instalei o servidor de SSH?

    Para SSH Server estou a usar o FreeSSHd numa máquina com Windows Server 2003. Como já disse esta máquina acede directamente à internet, sem proxies nem web filters.

    Para cliente estou a usar o PuTTy, e Firefox para testar a ligação de SOCKS. No PuTTy estou a tentar uma porta dinamica para tunnel e no firefox SOCKS5 para a porta escolhida. A maquina tem WinXP.


    Obrigadinhos :bigrinbo:


    EDIT: Isto devia estar na parte das redes! Se algum mod poder transferir agradeço)
     
    Última edição: 30 de Novembro de 2007
  2. hgdn

    hgdn Power Member

    Ninguem me pode tranferir isto para a parte das redes?

    E ajuda nada? :confused:
     
  3. ShadeX

    ShadeX Power Member

    Tu respondeste à tua própria pergunta... Como raio queres que o Firefox aceda a um servidor SOCKS se ele não existe?

    Infelizmente muita gente faz confusão com o que é um tunel SSH. O dito é basicamente um pipe por onde o tráfego flui de um sitio para o outro. Tudo o resto é fornecido por outra entidade não por SSH.

    No teu caso tens de montar um proxy HTTP/SOCKS na box que tem o SSH server.

    Atm o que tens é:

    Client app<->Tunel criado pelo client SSH e Server SSH<->Vazio

    O que queres (pecisas...) de ter é:

    Client app<->Tunel criado pelo client SSH e Server SSH<->Proxy<->Internet

    Claro que a unica vantagem que vejo em fazer isto é que podes fazer bypass ao proxy server "normal" do servidor. Mas se tens nível de acesso para fazer estas modificações na box tambem o deves ter para configurar o proxy para ter definições per user e relaxar as tuas...
     
  4. spastikman

    spastikman Banido

    se queres criar um tunel para um servidor especifico, podes criar assim :

    ssh -L9000:IP_DO_SERVER_REMOTO:PORTA_REMOTA IP_DO_SERVER_COM_SSH

    IP Hi5 = 123.123.123.1
    IP SSH SERVER = 192.168.100.1

    Por exemplo, se queres fazer relay da ligação para o hi5.com através do servidor de ssh
    :
    ssh -L9000:123.123.123.1:80 192.168.100.1

    Depois basta conectares-te ao localhost na porta 9000 e és redireccionado para o hi5 (excepto problemas de dns e respectivos vhosts).

    Normalmente uso este tipo de ligações apenas para ligar a serviços de uma intranet, os quais só posso aceder a partir da gateway dela. Por isso não tou a perceber muito bem o que queres e devo ter respondido a algo diferente daquilo que precisas.
     
  5. hgdn

    hgdn Power Member

    Obrigado pelas respostas.

    Acabei por conseguir resolver o problema porque activei o port forwarding no servidor SSH (pensava que o tinha feito ao inicio mas parece que afinal não tinha :D)

    ShadeX desde já obrigado. De qualquer das formas penso que estas enganado. Realmente também cheguei a pensar que precisaria de uma proxy na box que seria o SSH server mas a verdade é que tudo o que ia lendo pela net não apontava para isso. A solução como já disse foi fazer enable do port forwarding no SSH Server que usei/estou a usar que é o freeSSHd. Enquanto que na minha máquina foi apenas necessário criar um tunel dinâmico na porta 1080 para o servidor SSH, abrir uma sessão e no FF configurar o SOCKS para localhost:1080. A partir daí passei a aceder à internet pela máquina SSH que por sua vez tem livre acesso à internet. E sim, foi para fazer bypass à proxy (que é outra máquina da rede) e foi apenas para testar se esta solução resultava.

    spastikman é mesmo isso mas neste caso com uma porta dinâmica ou seja, não preciso de estar a fazer relay para todas as ligações que quero.

    passa a ser qualquer coisa tipo:

    putty -D 1080 -ssh ServerIP



    Agora o proximo passo é testar a viabilidade de fazer isto para uma máquina lá fora (passando pelo proxy que está a bloquear a porta de SSH por exemplo) e tentar arranjar uma forma de evitar isto :D
     
  6. ShadeX

    ShadeX Power Member

    Realmente desconhecia essa parte do protocolo. E agora que a conheço olho mais para ela como uma falha que outra coisa qqr...

    Mas fiquei confuso com o ultimo parágrafo... Se já tens acesso a um gateway e ele routa o tráfego, para que queres ligar-te a outro server SSH?

    Qqr modo, podes criar tuneis dentro de tunéis. Se bem percebi a tua questão, basta estabeleceres a primeira ligação da tua box para o gateway com forwarding para uma máquina algures na net onde esteja o segundo server SSH. Depois basta estabelecer a ligação entre a tua box e a outra box, dentro do tunel. Parece mais complicado do que é... Basta outro PuTTY a aceder ao localhost no port y que escolhas, ele é redireccionado de modo transparente pelo tunel. E o segundo pode fazer novamente forwarding para outro, and so on and so on... Até não teres mais ports disponivéis no localhost :)

    Eu uso muito isso pq tenho boxes em LAN's que apenas são acessivéis via SSH. O primeiro tunel entre a minha box local e o gateway do sitio estabelece o canal e depois só tenho de usar outro PuTTY/WinSCP para ligar à box interna. A dupla encriptação pesa no CPU, mas as ligações são lentas de qqr modo...

    p.s. acho que já percebi... só vai funcionar se o proxy/fw apenas bloquear o outgoing para certos ports. Um server SSH pode fazer listen em qualquer port que queiras, não tens grandes restrições. Se o proxy/fw não bloquear tudo o que não conheça passas, senão bates na trave outra vez.
     
    Última edição: 4 de Dezembro de 2007
  7. hgdn

    hgdn Power Member

    O que eu queria agora na realidade era testar um tunel directamente para uma maquina algures da net e não fazer um tunel dentro de um tunel. Este primeiro aspecto de ligar a uma box local que me routa directamente para a net da forma que quero era apenas para testar esta questão dos tuneis para fazer bypass a uma firewall.

    O que eu quero testar agora é basicamente a viabilidade de algum espertinho na rede conseguir fazer isso para uma maquina la fora, fazendo bypass à proxy. Tal como disses-te e bem o protocolo SSH pode ser usado em qualquer porta, pelo que a porta 80 por exemplo serve perfeitamente.

    Depois caso seja possivel, é tentar configurar o pix para que deixe de ser possivel :D


    Obrigado pela ajuda.
     
  8. guxo

    guxo Power Member

    boa noite a todos,

    preciso de aceder a uma partição via ftp.. e como tal instalei no pc fixo que tem essa partição o freesshd e no portatil o netdrive... no router do meo as portas de telnet, ssh e porta 21 estao abertas e direccionadas para o pc fixo, no entanto nao consigo conectar o netdrive ao servidor de ftp.. no pc fixo tenho o dyndns a bombar e uso o link na configuração do netdrive..


    alguem me consegue ajudar?

    cumpr

    ps: peço desculpa pelo desenterrar de tao velha thread... :P
     

Partilhar esta Página