Criando uma VPN sobre SSH usando o comando sshuttle linux

Criando uma VPN sobre SSH usando o comando sshuttle linux

Uma rede privada virtual (VPN) é uma maneira de mascarar sua identidade e localização pela Internet. Além disso, se você estiver tentando se conectar ao seu local de trabalho ou dispositivo doméstico remotamente, uma VPN é útil para rotear seu tráfego. Você tem a opção de comprar VPNs de fontes confiáveis ​​ou até criar o seu próprio SSH.

A terceirização de VPNs representa diferentes riscos de segurança. No entanto, você pode criar uma conexão VPN a partir de uma máquina host e conectar -se a um dispositivo remoto via SSH com o comando sshuttle linux. Você deve ter o python instalado na máquina host e ser conectado como root para que isso funcione. Quanto à máquina remota, ela não precisa ser raiz. Desde que você tenha sua senha, o Sshuttle funcionará bem.

Além disso, uma vez que a conexão for estabelecida, o Sshuttle fará o upload do código -fonte do Python para a máquina remota, eliminando o aborrecimento de você ter que instalar o python.

Como instalar Sshuttle

Instalar o Sshuttle é direto. Se você estiver no Debian ou Ubuntu, use o seguinte comando para instalá -lo no gerenciador de pacotes:

1
$ sudo apt-get install sshuttle

Use o seguinte comando se você usar o Fedora, Rhel ou CentOS. Como alternativa, você pode clonar seu repositório Git e executar o arquivo de configuração.

1
2
3
4
5
$ sudo dnf install sshuttle
ou
$ git clone https: // github.com/sshuttle/sshuttle.git

Usando Sshuttle para configurar uma VPN

Primeiro, você deve instalar o Sshuttle na máquina host para criar uma conexão VPN. Além disso, você precisa do nome do host e do endereço IP do dispositivo remoto.

Existem diferentes maneiras de usar Sshuttle.

  1. Proxyy todas as conexões locais

A melhor maneira de testar o Sshuttle é proxyndo todas as conexões locais sem envolver SSH. O comando para isso é:

1
$ sshuttle -v 0/0
  1. Testando a conexão com o servidor remoto

É possível testar sua conexão com a máquina remota usando Sshuttle. Nós usamos o "-N" opção para permitir que o servidor decida a rota e "-H" para hosts automáticos. Nosso comando será:

1
$ sshuttle -vnhr [email protected]

O IP é a máquina remota que estamos testando.

  1. Tunnelando todo o tráfego

Você pode usar o Sshuttle para encantar todo o tráfego para um servidor SSH remoto. Observe que o Sshuttle apenas encaminha solicitações DNS e tráfego TCP para o servidor remoto. Outros protocolos, como o UDP, não são suportados.

1
$ sshuttle - -dns -vr [email protected] 0/0

O 0/0 é uma abreviação para o servidor DNS 0.0.0.0, "Kyle" é o nome de usuário do servidor remoto e 192.168.88.217 é seu IP. Além disso, a conexão deve indicar que é "conectado" para mostrar que a VPN criada está funcionando.

  1. Excluindo tráfego específico

O "-X" a opção exclui certos tráfego ao usar o Sshuttle. Especifique o endereço IP a ser excluído no tunelamento. Por exemplo, para excluir “192.168.88. 21 ”, O comando será como mostrado abaixo:

1
$ sshuttle - -dns -vr [email protected] -x 192.168.88.21
  1. Subnets específicas de tunelamento

Semelhante a excluir tráfego específico, você pode escolher quais sub -redes servir sobre a VPN criada. Você pode especificar o endereço IP ou os intervalos para as sub -redes. Por exemplo, para especificar um determinado IP e uma faixa de sub -rede, o comando será:

1
$ sudo sshuttle -r user@remote_host 192.168.88.2/24 192.168.0.0/16

O único tráfego que será túnel é para as sub -redes IP especificadas, Classe B e C. Especificar as sub -redes para o túnel funciona melhor ao lidar com muitos hosts em uma extensa rede, pois nem todas as conexões exigem a VPN. Você também pode adicionar o “-Dns” opção para encaminhar consultas DNS para o servidor.

Conclusão

Existe um risco na compra ou no uso de VPNs disponíveis ao público para encantar suas conexões. Ao trabalhar com servidores e máquinas remotas, pode ser necessário rotear seu tráfego e mantê -lo seguro usando uma VPN. Este guia abordou como instalar a ferramenta Sshuttle Linux, que permite criar uma VPN sobre uma conexão SSH. Com Sshuttle, você não precisa mais se preocupar com a VPN. Isso lhe dará a proteção necessária para o seu tráfego ao usar os sistemas Linux.