Como criar um túnel SSH entre um servidor Linux e um cliente Windows

A ideia de construir um Túnel SSH é criptografar todas as conexões (independentemente, por exemplo, se você vai para uma página https ou http) e se conectar a Internet através de um canal seguro. Este canal "seguro" nada mais é do que um servidor configurado para este fim. Este servidor pode estar, por exemplo, na sua casa.


A "desvantagem" deste método é que você sempre tem que ter esta máquina ligada e configurada corretamente para funcionar como um servidor SSH, mas permite que você melhore substancialmente a segurança de sua conexão e até mesmo evite as restrições de conexão impostas pelos administradores de rede (por exemplo, seu trabalho).

Eu ouço você perguntar: isso pode realmente me ajudar? Bem, vamos supor o seguinte cenário: você está em um cybercafé ou restaurante com Wi-Fi gratuito e precisa fazer uma transferência bancária ou outra operação importante. Obviamente, é sempre recomendável realizar esse tipo de transação em um ambiente seguro. No entanto, existe uma solução: um túnel SSH. Desta forma, podemos nos conectar à Internet através de nosso servidor "seguro".

Este método também é útil para contornar as restrições impostas às conexões em muitos ambientes de trabalho. Não consegue acessar o YouTube do trabalho? Bem, um túnel SSH pode ser a solução, já que todas as solicitações serão feitas através do seu servidor "seguro". Ou seja, como o IP do seu servidor seguro não está bloqueado (sim, por outro lado, do YouTube) você poderá "contornar" esta restrição (não poder acessar o YouTube) desde que pelo administrador da rede de sua empresa sua máquina estava apenas conversando com seu servidor "seguro" e não tem ideia de que através dele você está navegando em muitas páginas.

Neste tutorial vamos explicar o caso "típico": servidor Linux, cliente Windows.

Configurar servidor Linux

1.- Instale o servidor SSH. Para fazer isso, abri um terminal e executei:

En Ubuntu:

sudo apt-get install servidor openssh

En arco:

pacman -S abresh

En Fedora:

yum -y instala servidor openssh

Pronto. Agora você poderá acessar o Ubuntu (servidor SSH) com um cliente SSH.

2.- Depois de instalado, é útil revisar o arquivo de configuração:

sudo nano / etc / ssh / sshd_config

A partir deste arquivo, você poderá configurar seu servidor SSH com facilidade. Minha recomendação é modificar apenas 2 parâmetros: porta e allowusers.

Para evitar possíveis ataques, é aconselhável alterar a porta que o SSH usará. Por padrão ele vem com o valor 22, você pode escolher outro que melhor se adapte a você (para o propósito deste tutorial escolhemos 443 mas pode ser qualquer outro).

O parâmetro Allowusers permite restringir o acesso por usuário e opcionalmente o host do qual você pode se conectar. O exemplo a seguir restringe o acesso ao servidor SSH de forma que apenas os usuários fulano e santo possam fazer isso nos hosts 10.1.1.1 e 10.2.2.1.

AllowUsers so and so@10.1.1.1 mengano@10.1.1.1 so and so@10.2.2.1 mengano@10.2.2.1

Configure o roteador

Caso o seu servidor esteja atrás de um roteador, é necessário configurá-lo para que não bloqueie as conexões de entrada. Mais especificamente, você deve configurar.

Antes de ir direto ao ponto e mostrar a configuração necessária, parece prudente explicar um pouco em que consiste o encaminhamento de porta.

Suponha que você tenha uma rede local de 3 máquinas, todas elas protegidas por um roteador. Como uma conexão de entrada (de SSH, como seria o nosso caso) se comunica com a máquina 1 em nossa rede local? Não se esqueça que "de fora" as 3 máquinas, embora tenham IPs locais, compartilham um único IP público através do qual se conectam à Internet.

A solução para o problema mencionado é o encaminhamento de porta. Desta forma, quando as conexões de entrada forem recebidas na porta X de nosso IP público, o roteador irá encaminhá-la para a máquina correspondente. Dessa forma, sempre que nos conectamos por meio dessa porta, sabemos que o roteador vai nos redirecionar (portanto, encaminhamento de porta) para a máquina correspondente. Tudo isso, obviamente, deve ser configurado no roteador.

A configuração de encaminhamento de porta varia um pouco de acordo com o roteador que você está usando. O mais prático é visitar portforward.com, escolha o modelo do roteador que você está usando e siga as etapas descritas lá.

Configure o cliente Windows

Para se conectar do Windows, é prático usar a ferramenta PuTTY como um cliente SSH.

1.- O primeiro passo é baixar o PuTTY

Como você pode ver na página de download do PuTTY, existem várias versões disponíveis. Eu recomendo baixar a versão portátil do programa: putty.exe. A vantagem de escolher a versão portátil é que você sempre pode carregá-lo em um pendrive e rodar o programa de qualquer computador, onde você estiver.

2.- Abra o PuTTY e especifique o IP (público) e a porta do servidor ao qual o cliente SSH deve se conectar. Como descobrir o IP público do seu servidor? Fácil, basta google "qual é meu ip público" para encontrar milhares de páginas que oferecem este serviço.

3.- Caso o "cliente" esteja atrás de um proxy, não se esqueça de configurá-lo corretamente. Caso você não tenha certeza de quais dados inserir, abra o Internet Explorer e vá para Ferramentas> Conexões> Configurações da LAN> Avançado. Copie e cole os dados que aparecem lá no PuTTY, como pode ser visto na imagem abaixo. Em alguns casos, pode ser necessário inserir um nome de usuário e uma senha.

4.- É necessário inserir os dados de encaminhamento de porta "locais" para construir o túnel SSH. Vá para Conexão> SSH> Túneis. A ideia aqui é a seguinte, temos que dizer ao PuTTY quais conexões "desviar" para nosso servidor seguro. Para fazer isso, devemos escolher uma porta.

Minha recomendação, especialmente se a máquina estiver atrás de um proxy, é que você escolha a porta 443, pois é aquela usada pelo SSL para fazer conexões seguras, o que tornará difícil para o administrador descobrir o que você está fazendo. A porta 8080, por outro lado, é a usada pelo HTTP (que não é uma conexão "segura"), portanto, um administrador de rede experiente pode suspeitar e até mesmo ter bloqueado a porta para outros tipos de conexão.

Em Destino, insira novamente o IP do servidor seguro, seguido por dois pontos e a porta que você abriu no ponto intitulado "Configurar o roteador" e no arquivo ~ / .ssh / config. Por exemplo, 192.243.231.553:443.

Selecione Dinâmico (o que criará uma conexão SOCKS, que usaremos no próximo ponto) e clique em Adicionar.

5.- Voltei para a tela principal do PuTTY, cliquei em Salvar e em Abrir. Na primeira vez que você se conectar ao servidor, uma mensagem de alerta como a que está abaixo aparecerá:

6.- Em seguida, solicitará seu nome de usuário e senha com acesso ao servidor.

Se tudo correu bem, depois de fazer o login, você deverá ver algo parecido com o que vê abaixo ...

7.- Finalmente, sem fechar o PuTTY, abra e configure o Firefox (ou seu navegador favorito) para se conectar à Internet através do PuTTY.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Jose daniel Rodriguez dito

    uma pergunta na etapa 6, qual nome de usuário e senha devo colocar

  2.   jose dito

    excelente, vou tentar configurá-lo com a minha casa

  3.   Al dito

    para acessar a internet de minha casa:
    conexão dial-up por modem de 56k,
    Eu executo um arquivo .bat que tem esta configuração:
    @Echo Off
    C:
    Cd C: \ Windows
    massa -N -C -D 1080 -P 443 -ssh usuario@00.00.000.000 -pw passar
    saída
    e o que está relacionado com a massa que está configurada neste
    formulário: nas opções que controlam o uso do proxy coloco em http, no proxy
    hostname coloquei meu proxy e porta 3128 e nome de usuário e senha
    Eu coloquei meus dados deixando todo o resto intocado e salvando este
    configuração pela primeira vez como configurações padrão
    e para usar o mozilla, yahoo messenger, etc, eu tenho que fazer proxy
    aplicativos com o proxy versão 3 configurado desta forma:
    no servidor proxy com o endereço 127.0.0.1 porta 1080 sock versão 5,
    nas regras de proxy adiciono a aplicação de massa e nas ações coloco
    direto, para que todos os programas saiam por meio disso.
    Preciso saber como posso conseguir isso no meu telefone Android que
    Eu me conecto ao meu pc através do Connectify e ele compartilha minha conexão do
    acesso ao telefone. Preciso de tutorial e apks para resolver isso para mim
    dilema. Cumprimentos e obrigado antecipadamente

  4.   Clint Eastwood dito

    Era preciso explicar como o servidor SSH irá atender magicamente às requisições HTTP que o cliente faz ... enfraquece o tutorial ...

    1.    Errol Flynn dito

      Clint Eastwood errado.

      Com o que foi explicado no tutorial, "magicamente", funciona!

      Nem um pouco fraco, antes diria justo e concreto.

      Muito bem explicado para os inexperientes.

      lembranças

      1.    vamos usar linux dito

        Que bom que te serviu! Um abraço! Paulo.

  5.   Dumas Linux dito

    Isso funciona muito bem.

    Conforme abaixo, túnel SSH com WinSCP:

    http://www.sysadmit.com/2014/05/linux-tuneles-ssh-con-winscp.html

  6.   JEAMPIERRE ZAMBRANO-CAVERNA dito

    ótimo muito bem explicado 5 * obrigado

  7.   Rodrigo dito

    Uma pergunta…
    E se eu quiser um túnel entre duas máquinas Linux? Tenho a seguinte situação: No meu trabalho estamos mexendo em um pc, queríamos testar o software de videoconferência, então tivemos que instalar um servidor em um pc avandonado. O problema é que ao instalar o software (bigbluebutton) a instalação falha ... descobrimos que o problema é que o download de um componente da instalação está sendo bloqueado (não sou cientista da computação, sou professor em constante aprendizado ) ...
    Como a Empresa é ótima, as possibilidades de nos ajudar nas redes são menores que nulas ...
    Então, eu estava pensando em conectar o servidor (ubuntu server) através de um túnel ssh com meu pc doméstico (que tem ubuntu) e depois instalar o software ...
    É possível? Me ajudam?

  8.   suan dito

    Olá bom, tenho uma dúvida, quero me conectar a um aplicativo que tenho no meu servidor Debian que está em uma máquina virtual, que montei no Windows e quero acessar esse aplicativo de outra rede, alguém me oriente por favor .

  9.   anony dito

    Como instalar e configurar um servidor SSH
    https://www.youtube.com/watch?v=iY536vDtNdQ

  10.   Tosko dito

    Olá bom, tenho uma dúvida que está me incomodando muito e decidi ir consultar a comunidade .. bom aqui estou, para ver se você pode me ajudar .. Sou "novo" no mundo da virtualização, linux.

    O caso é o seguinte Eu instalei uma máquina virtual com servidor linux 14.04.5 LTS, configurei a rede no Vbox como um “adaptador bridge” selecionando meu adaptador de rede. Uma vez dentro do meu servidor instalei várias coisas, ou seja, tenho acesso à internet .. dentre essas coisas instalei o serviço SSH, deixando a porta 22 por padrão e o serviço ftp "vsftpd".

    Ao consultar o comando «ifconfig» ele me responde:
    Encap do link: endereço Ethernet HW 08: 00: 27: d5: 2c: 88
    Endereço inet: 192.168.0.13 Diffus.:192.168.0.255 Masc: 255.255.255.0
    ......

    Agora, para conectar do meu computador (Windows 10) com Putty ao meu servidor virtual usando ssh (porta 22) eu uso o ip "192.168.0.13", e o mesmo com FTP, mas se eu quiser um amigo de casa para conectar meu servidor seja através de SSH ou FTP é impossível para nós usarmos o IP que eu uso no meu computador.

    Gostaria de saber porque é que o ip "192.168.0.13" acho que funciona localmente, ou seja, devo configurar outra coisa, modificar / etc / network / interfaces, modificar algo no iptables?
    Bem, quero que meu servidor funcione como um IP público ao qual qualquer pessoa possa se conectar com os acessos.

    Agradecemos antecipadamente!