Proteja todo o Wifi com uma VPN - Ponto de acesso !: 5 etapas
Proteja todo o Wifi com uma VPN - Ponto de acesso !: 5 etapas
Anonim
Proteja todo o Wifi com uma VPN - Ponto de acesso!
Proteja todo o Wifi com uma VPN - Ponto de acesso!

À medida que mais e mais de nossas vidas são enviadas para a grande nuvem no céu que é a Internet, fica cada vez mais difícil permanecer seguro e privado em suas aventuras pessoais na Internet. Se você está acessando informações confidenciais que deseja manter privadas, tentando contornar os limites colocados sobre onde ou o que você pode navegar em sua rede ou se deseja apenas uma experiência de navegação mais segura, o conselho mais comum que ouço para permanecer seguro na Internet é usar uma Rede Privada Virtual (ou VPN para breve).

As VPNs oferecem dois grandes serviços em um pacote, pois criptografam todos os pacotes de informações enviados por meio delas e fazem serviços remotos que estão na mesma rede da VPN local para a máquina que você usa para se conectar. Se meu servidor VPN estiver na Alemanha e eu me conectar à VPN de um laptop na Austrália, meu laptop agora terá um endereço IP da Alemanha!

Um grande obstáculo com os serviços VPN mais populares, porém, é que muitos tipos de dispositivos estão em situações em que não podem ser configurados para usar um cliente VPN ou não têm um cliente VPN disponível para uso. Então, queremos que nossos dispositivos sejam conectados à nossa VPN, mas para essas outras máquinas que não podem se conectar a um cliente VPN simples, queremos que eles sejam conectados à nossa VPN, mesmo sem saber que estão conectados! Insira um ponto de acesso VPN!

Etapa 1: Materiais

Materiais
Materiais

Os materiais para este projeto são baixos, mas todos os itens são obrigatórios.

Além do seu roteador doméstico (que presumo que você deva ter), você precisará

- 1 Raspberry Pi (de preferência o Raspberry Pi 3 ou melhor, mas contanto que suporte uma conexão Ethernet, deve estar tudo bem!)

- 1 cabo Ethernet

- 1 dongle wi-fi (a menos que você esteja usando um Raspberry Pi 3, caso em que você pode usar o wi-fi embutido

- 1 fonte de alimentação de 5 V 2 amp para o Raspberry Pi

Etapa 2: Configuração do ponto de acesso Wifi - Parte 1 - Endereço IP estático para Wifi

Configuração do ponto de acesso Wifi - Parte 1 - Endereço IP estático para Wifi
Configuração do ponto de acesso Wifi - Parte 1 - Endereço IP estático para Wifi

Antes de configurar a conexão VPN para o nosso ponto de acesso Raspberry Pi, temos que configurar o Pi como um ponto de acesso. Para fazer isso, usaremos os pacotes hostapd e dnsmasq para o Raspberry Pi. Hostapd é um daemon de espaço do usuário para configurar pontos de acesso sem fio e servidores de autenticação, enquanto dnsmasq fornece infraestrutura de rede (DNS, DHCP, inicialização de rede, etc.) para pequenas redes e pequenos roteadores de rede.

Portanto, antes de começar, certifique-se de ter uma imagem limpa do Raspbian OS em execução no Pi, com as atualizações mais recentes aplicadas. Você também quer ter certeza de que seu Raspberry Pi está conectado ao seu roteador através de uma conexão Ethernet de linha fixa, NÃO wi-fi! Eventualmente estaremos aceitando solicitações de conexão de outros dispositivos por meio de nosso módulo wi-fi, então você não quer se conectar ao seu roteador por meio do mesmo módulo. Se você estiver usando um Raspberry Pi Zero ou uma adição mais antiga (que não tem wi-fi embutido), você ainda pode usar esse Raspberry Pi, você só precisa de um dongle wi-fi USB.

Depois de conectar ao seu Raspberry Pi (via SSH ou com um monitor ativado), verifique se ele está atualizado

sudo apt-get update

sudo apt-get upgrade

Em seguida, você deseja baixar e instalar hostapd e dnsmasq

sudo apt-get install hostapd dnsmasq

Assim que os pacotes forem instalados, os dois programas serão iniciados automaticamente, mas queremos fazer alterações em suas configurações antes de executá-los. Então, entraremos em contato com o controle do sistema para interromper os serviços vinculados a esses programas

sudo systemctl stop hostapd

sudo systemctl stop dnsmasq

Com os serviços agora interrompidos, queremos atribuir a nós mesmos um endereço IP estático, usando o arquivo de configuração dhcpcd encontrado em /etc/dhcpcd.conf

Antes de fazermos isso, queremos ter certeza de que estamos fazendo referência à interface correta ao atribuir o endereço IP estático. Se estiver usando um Raspberry Pi 3b ou Raspberry Pi Zero W, ele deve ser listado como wlan0. Se você estiver usando um dongle wi-fi, normalmente acho um pouco mais fácil conectar o dongle wi-fi ao roteador, obter um novo endereço IP e, em seguida, verificar sua conexão para encontrar sua interface. Você pode verificar sua interface executando o seguinte comando

ifconfig

Se você verificar a imagem superior anexada a esta etapa, poderá ver (sem os endereços IP redigidos) as interfaces atribuídas ao meu Raspberry Pi. No meu caso estou usando wlan0, mas depende do seu setup. Como mencionei antes, se você usar um dongle wi-fi, conecte-se à sua rede, execute o comando ifconfig, e qualquer interface que aparecer que tenha um endereço IP válido e não seja "eth0" ou "lo" será a interface que você deseja usar.

Agora que sei qual interface é para meu adaptador wi-fi, posso atribuir um endereço IP estático a ele no arquivo de configuração dhcpcd! Abra a configuração do seu editor favorito (estou usando o nano).

sudo nano /etc/dhcpcd.conf

Na parte inferior da configuração, queremos adicionar as seguintes linhas, mas substituir "wlan0" por qualquer que seja sua interface:

interface wlan0 static ip_address = 192.168.220.nohook wpa_supplicant

O que esse comando está fazendo é estabelecer um ip estático de 192.168.220.1 e, em seguida, dizer à interface wlan0 para não se conectar ao driver wpa_supplicant que normalmente é usado para essa interface se conectar a outras redes. Fazemos isso para que (eventualmente) possamos transmitir nosso próprio sinal por meio da interface wlan0, em vez de nos conectarmos a uma rede por meio dessa interface.

Se você estiver usando o nano para fazer essas alterações, salve as alterações pressionando ctrl + x e, em seguida, Y e, em seguida, digite para salvar o arquivo e sair do nano. (tenha em mente que entraremos e sairemos do nano um pouco neste tutorial).

Finalmente, para que essas mudanças tenham efeito, você terá que reiniciar seu Pi ou apenas reiniciar o serviço dhcpcd para recarregar a configuração e aplicar essas mudanças

sudo systemctl restart dhcpcd

Aguarde um momento e execute o comando ifconfig novamente para verificar se suas alterações entraram em vigor. Eu admito, às vezes eu tentei isso e meu roteador ainda tem uma concessão válida do endereço IP que eu estava usando, então ele manterá o endereço antigo. Se for esse o caso, verifique tudo em sua configuração e reinicie o serviço dhcpcd novamente.

Nosso adaptador wi-fi (deve) agora ter um endereço IP estático!

Em seguida, a configuração hostapd e dnsmasq!

Etapa 3: Configuração do ponto de acesso Wifi - Parte 2 - Configuração do Hostapd

Configuração do ponto de acesso Wifi - Parte 2 - Configuração Hostapd
Configuração do ponto de acesso Wifi - Parte 2 - Configuração Hostapd

Com as mudanças dhcpcd.conf fora do caminho, é hora de começar com o hostapd! Comece criando um novo arquivo hostapd.conf em seu editor de texto favorito (mais uma vez em nano para mim!)

sudo nano /etc/hostapd/hostapd.conf

Ao abrir o arquivo de configuração, copie o texto a seguir e cole-o no arquivo de configuração.

interface = wlan0driver = nl80211

hw_mode = g channel = 6 ieee80211n = 1 wmm_enabled = 0 macaddr_acl = 0 ignore_broadcast_ssid = 0

auth_algs = 1 wpa = 2 wpa_key_mgmt = WPA-PSK wpa_pairwise = TKIP rsn_pairwise = CCMP

# Nome e senha da rede Wifi VOCÊ DEVE ALTERAR ESTE ssid = Pi-WifiFoLife # A senha da rede wpa_passphrase = Y0uSh0uldCh @ ng3M3

Depois de colar, encontre a seção final na parte inferior que tem "ssid =" e "wpa_passphrase =". É assim que se chamará a rede wi-fi que estamos configurando e qual será a senha para se conectar à rede wi-fi que estamos configurando. ASSEGURE-SE DE ALTERAR ISTO POR ALGO MAIS! Você foi avisado.

Além disso, se você estiver usando um dongle wi-fi em vez de um wi-fi embutido, você terá que alterar a seção da interface na parte superior da configuração para corresponder à interface do seu dongle wi-fi. Também pode ser necessário alterar o driver, dependendo do modelo do dongle wi-fi que estiver usando. Para obter uma lista (mais abrangente) de dongles wi-fi compatíveis, seus drivers correspondentes e páginas de suporte, achei esta página muito útil! Verifique também a página de suporte do produto que você está usando se tiver dúvidas. Lembre-se, se você conseguiu se conectar à sua rede anteriormente no tutorial com seu dongle wi-fi, isso significa que deve haver um driver funcionando para o dongle em seu pi em algum lugar !!!

Agora que temos nosso novo arquivo de configuração, temos que nos certificar de que informamos aos processos hostapd para referenciar o novo arquivo de configuração! comece com o seguinte:

sudo nano / etc / default / hostapd

Encontre a linha no arquivo que acabamos de abrir que diz # DAEMON_CONF = "" e altere para DAEMON_CONF = "/ etc / hostapd / hostapd.conf" (certifique-se de tirar o # sinal no início para descomentar o campo!)

Há mais um arquivo de configuração para hostapd que precisamos atualizar. Execute o seguinte comando:

sudo nano /etc/init.d/hostapd

Essa mudança é quase idêntica à anterior. Encontre a seção DAEMON_CONF = e substitua-a por DAEMON_CONF = / etc / hostapd / hostapd.conf

Em seguida, salve e saia desse arquivo!

Hostapd agora está configurado!

Etapa 4: configuração DNSMasq e encaminhamento de IP

Configuração DNSMasq e encaminhamento de IP
Configuração DNSMasq e encaminhamento de IP

Com o hostapd agora configurado (embora ainda não esteja em execução), podemos agora passar para o dnsmasq!

Antes de começar a editar os arquivos de configuração, podemos ir em frente e renomear um dos arquivos de configuração originais, uma vez que não usaremos nada que esteja neste arquivo de configuração em particular.

Fazer um comando rápido mv com um novo nome de arquivo deve resolver o problema

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.old

Em seguida, crie um novo arquivo de configuração!

sudo nano /etc/dnsmasq.conf

Sem entrar muito neste, eu apenas copiava o seguinte e colava no novo arquivo

interface = wlan0 # Use a interface wlan0 (ou qualquer outra interface sem fio) server = 1.1.1.1 # Cloudfare dhcp-range = 192.168.220.50, 192.168.220.150, 12h # Intervalo de IP e tempo de concessão

A linha superior desta configuração é para a interface que estamos usando para transmitir nosso sinal, a linha do meio é para o nosso provedor de serviços de nomes Doman e, em seguida, a linha inferior é o intervalo de endereços IP que o Pi atribuirá aos usuários que se conectam o Pi Wifi. Vá em frente e salve este arquivo e saia do nano (ou vim, ou o que você estiver usando para alterações de arquivo).

Em seguida, temos que definir o arquivo de configuração systctl.conf para encaminhar todo o tráfego que chega à interface sem fio para rotear através da conexão Ethernet

sudo nano /etc/sysctl.conf

Dentro deste arquivo de configuração, tudo que você precisa fazer é descomentar a linha que é # net.ipv4.ip_forward = 1 e salvar / sair deste arquivo de configuração.

Agora que configuramos o encaminhamento, queremos configurar um NAT (Network Address Translation) entre a interface wireless (wlan0) e a interface ethernet (eth0). Isso ajuda a encaminhar todo o tráfego do wi-fi para a conexão Ethernet (e eventualmente VPN!).

Adicione uma nova regra ao iptable para o encaminhamento de NAT

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

A regra agora está configurada, mas a iptable é liberada toda vez que o Raspberry Pi é reiniciado, então temos que salvar esta regra para que ela possa ser (re) carregada toda vez que nosso Pi for reiniciado.

sudo sh -c "iptables-save> /etc/iptables.ipv4.nat"

A regra agora está salva, mas temos que atualizar o arquivo de configuração rc.local local do Pi para garantir que ele seja carregado sempre!

Abra o arquivo rc.local em seu editor favorito

sudo nano /etc/rc.local

e encontre a seção que diz saída 0

Logo acima dessa linha (não exclua!), Adicione o seguinte comando que recarregará a regra de NAT que configuramos. Agora deve ser assim

iptables-restore </etc/iptables.ipv4.nat exit0

Salve e saia deste arquivo, e agora todas as nossas configurações devem ser feitas para o ponto de acesso!

Tudo o que precisamos fazer é iniciar os serviços hostapd e dnsmasq e reiniciar nosso Raspberry Pi!

sudo service hostapd start

sudo service dnsmasq start

Teste para ter certeza de que pode ver seu novo AP. Se tudo estiver configurado corretamente, agora você deve ter um ponto de acesso wi-fi no seu Raspberry Pi! Agora reinicie o pi

sudo reboot

Em seguida, configure uma conexão OpenVPN!

Etapa 5: configuração do OpenVPN e configuração do provedor de serviços VPN

Configuração do OpenVPN e configuração do provedor de serviços VPN
Configuração do OpenVPN e configuração do provedor de serviços VPN

Agora que nosso Pi está transmitindo wi-fi, é hora de configurar o openvpn! Começaremos instalando o openvpn através do apt-get install

sudo apt-get install openvpn -y

Depois que o openvpn termina a instalação, temos que navegar até onde iremos armazenar nossas credenciais de autenticação e arquivo de configuração openvpn.

cd / etc / openvpn

A primeira coisa que faremos aqui (em / etc / openvpn) é configurar um arquivo de texto que armazenaremos nosso nome de usuário e senha para o serviço VPN que estamos usando.

sudo nano auth.txt

Tudo o que precisamos é armazenar o nome de usuário e a senha neste arquivo, nada mais.

nome do usuário

senha

Devo acrescentar que, neste ponto, você deve ter uma ideia de quem deseja usar como serviço VPN para suas conexões. Há um amplo debate sobre qual serviço é o melhor ou o mais seguro, então pesquise e verifique as avaliações sobre eles também! Para os fins deste tutorial, estou usando o acesso privado à Internet (PIA). Eles são bastante baratos e são reconhecidos por serem muito confiáveis! Você também pode configurar sua VPN para terminar em praticamente qualquer grande região do mundo! Canadá? Rússia? Japão? Não é um problema!

Se você usa o Acesso privado à Internet, eles também têm uma parte útil do site, onde você pode reunir o tipo de arquivo de configuração openvpn que pode usar nesta configuração! Existem outros tipos de configurações openvpn que você pode usar com outros provedores, mas decidi escolher este.

Qualquer que seja o provedor de serviços que você escolher, será necessário um arquivo de conexão openvpn (deve terminar em.ovpn para o tipo de arquivo) desse provedor de serviços para se conectar. Para simplificar, renomeei meu "connectionprofile.ovpn" antes de carregá-lo em meu Raspberry Pi. Depois de baixar o arquivo.ovpn no Pi ou transferi-lo para o Pi, certifique-se de que o arquivo esteja em / etc / openvpn no seu Pi.

Depois de mover o arquivo vpn aberto para a pasta correta, temos que alterar o tipo de arquivo, pois openvpn espera um arquivo de configuração que termine em.conf em vez de.ovpn. Quando eu fiz isso, eu ainda queria manter o arquivo original intacto, apenas no caso de algo estranho acontecer, então eu apenas usei um comando cp (já que você está em / etc / openvpn, você precisará usar permissões de sudo para executar este comando)

sudo cp /etc/openvpn/connectionprofile.ovpn /etc/openvpn/connectionprofile.conf

Com a configuração do perfil openvpn criada, precisamos fazer uma mudança rápida para fornecer nossas credenciais, então é hora de quebrar o nano novamente!

sudo nano /etc/openvpn/connectionprofile.conf

Você vai querer encontrar a linha auth-user-pass e substituí-la por auth-user-pass auth.txt

Isso diz ao openvpn para obter o arquivo de credenciais que usamos anteriormente para usar ao autenticar o perfil que fornecemos.

Salve e saia do arquivo de configuração do perfil!

Isso deve ser tudo para a configuração da VPN, mas queremos testar se todas as nossas configurações foram definidas corretamente antes de definir o serviço VPN para iniciar automaticamente. Execute o seguinte comando para testar a conexão VPN

sudo openvpn --config "/etc/openvpn/connectionprofile.conf"

Você deve ver um monte de texto rolando enquanto o Pi faz tentativas de conexão com o provedor de serviços VPN (espero que nenhuma mensagem de erro!), Mas você deseja deixá-lo até ver Sequência de inicialização concluída na janela. Se você acabar vendo isso, significa que seu Pi está conectado ao seu provedor de serviços VPN! Você pode ir em frente e encerrar o processo pressionando ctrl + c na janela do terminal.

Agora que a VPN funciona, temos que limpar os iptables atuais. Podemos completar isso com os três comandos a seguir

sudo iptables -Fsudo iptables -t nat -F sudo iptables -X

Uma vez que eliminamos o iptables, porém, temos que redefinir a regra nat que criamos anteriormente neste tutorial executando o seguinte comando (este comando deve parecer familiar!)

sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

Agora podemos salvar essa configuração sobre a configuração anterior que montamos na etapa anterior. (este comando também deve parecer familiar!)

sudo sh -c "iptables-save> /etc/iptables.ipv4.nat"

Agora que temos as regras de NAT configuradas novamente, temos que mudar a configuração padrão do openvpn para usar o perfil que configuramos. Fazemos isso editando o arquivo de configuração em / etc / default / openvpn

sudo nano / etc / default / openvpn

Encontre a linha que diz # autostart = "all", descomente esta linha e altere-o para o nome do seu arquivo de configuração openvpn (sem o.conf, é claro!). Portanto, no meu caso, eu altero a linha para autostart = " perfil de conexão"

e então salve e saia deste arquivo de configuração!

Isso deve ser tudo para o VPN setu! Apenas reinicie o Pi e verifique se tudo está funcionando conectando-se ao hotspot e verificando seu endereço IP através de um site como whatismyip.com.

Com essa configuração, é possível que o endereço IP do seu roteador vaze por meio de um vazamento de DNS. Podemos corrigir isso alterando o DNS que referimos no arquivo dhcpcd.conf para apontar para um serviço DNS externo, como Cloudflare!

Abra o arquivo dhcpcd.conf em seu editor favorito:

sudo nano /etc/dhcpcd.conf

Encontre a linha no config #static domain_name_servers = 192.168.0.1, descomente a linha e altere-a para o seguinte: domain_name_servers estático = 1.1.1.1 e salve / saia do arquivo de configuração. Reinicie o Pi mais uma vez e agora você pode verificar se o endereço IP do seu roteador não está vazando através do ipleak.net.

Outra coisa que você deve estar ciente é que o endereço IP do seu roteador está possivelmente vazando através do WebRTC. O WebRTC é uma plataforma usada por todos os navegadores modernos para padronizar melhor as comunicações, incluindo mensagens instantâneas, videoconferência e streaming de áudio e vídeo. Um subproduto dessa plataforma é que, se não for verificado, pode vazar o endereço IP do seu roteador se você estiver conectado a uma VPN. A maneira mais fácil de evitar isso é usando extensões ou plug-ins do navegador, como webrtc-lea-prevent.

Com tudo configurado no seu pi agora, se você quiser garantir que todo o seu tráfego de internet seja criptografado, você pode se conectar a este hotspot, e todo o seu tráfego será criptografado através da VPN!

Espero que tenha gostado do meu Instructable, agora vá proteger todo o wi-fi !!