A execução de seu próprio servidor VPN é uma ótima maneira de aumentar sua segurança móvel e obter acesso à sua LAN a partir da Internet, mas eles são notoriamente difíceis de configurar. A VPN Pi transforma seu Raspberry Pi em um servidor VPN barato e eficaz, usando uma instalação guiada que faz a maior parte do trabalho duro para você.
Você poderá ignorar os filtros de sites no trabalho ou na escola e conectar-se facilmente a dispositivos em sua rede doméstica, como servidores de arquivos ou impressoras. E com apenas algumas etapas extras, você também pode ativar a criptografia de ponta a ponta e executar toda a sua Internet móvel através de um túnel seguro e anônimo.
O que é Pi VPN?
O Pi VPN é um servidor OpenVPN leve, projetado para rodar no Raspberry Pi 2 ou 3. Ele fornece acesso à sua rede doméstica através de uma conexão segura pela Internet. Ao conectar um Raspberry Pi ao seu roteador, ele funciona como uma ponte entre dispositivos móveis e sua rede.
Você pode usar o Pi VPN para:
- Acesse seus arquivos, músicas e filmes de qualquer lugar
- Criptografe sua conexão de internet móvel
- Imprima nas impressoras domésticas a partir do seu laptop
- Ignorar firewalls e restrições de sites no trabalho e no exterior
- Ocultar o seu endereço IP móvel
- Conecte-se com suas câmeras domésticas e dispositivos inteligentes
Se você estiver encaminhando muitos serviços através do seu roteador, uma conexão VPN doméstica é uma alternativa mais segura. Cada porta que você encaminha é um túnel que alguém, em algum lugar, poderia usar para entrar na sua rede. O Pi VPN abre apenas uma porta e usa criptografia forte para manter sua LAN segura.
Escolhendo um provedor VPN
Uma das opções mais importantes antes mesmo de você começar esse projeto é qual provedor de VPN você usará. E quando você faz essa escolha, os fatores que você precisa ter em mente são segurança, largura de banda e latência.
A segurança é vital, você precisa saber que o seu provedor de VPN não manterá registros da sua conexão. Mas a largura de banda e a latência são igualmente importantes neste caso. Se você escolher um provedor com tempos de ping altos ou largura de banda insuficiente, sua conexão à Internet sofrerá.
Com isso em mente, recomendo que você use o IPVanish para este projeto. O IPVanish possui alguns dos menores tempos de latência e maior largura de banda de qualquer provedor, e testamos muitos. Isso manterá sua conexão rápida e ágil, mesmo quando você estiver navegando na Web por uma conexão VPN de salto duplo.
RÁPIDO E CONFIÁVEL: O IPVanish possui uma grande rede de servidores não descongestionados que atingem grandes velocidades. Fortes recursos de segurança e privacidade. Um favorito para o Kodi e o Amazon Fire Stick por seus aplicativos e recursos de streaming. Ideal para famílias, pois pode lidar com até 10 dispositivos conectados simultaneamente. Experimente sem risco com a garantia de devolução do dinheiro em 7 dias.
Preparando-se para a VPN Pi
Para começar, você precisará de:
- um Raspberry Pi 2 ou 3 com o Raspbian instalado
- um cartão de memória de 8 GB ou mais
Para obter melhores resultados, o Raspberry Pi deve ser conectado a um roteador com um cabo Ethernet, mas uma conexão wifi também funcionará. Se você estiver usando wifi, você precisará substituir wlan0 por eth0 ao longo deste tutorial.
Ative o serviço SSH no Raspberry Pi Config ativando-o no diretório Opções de interface cardápio. Você pode iniciar a ferramenta de configuração no menu Pi ou usar este comando:
sudo raspi-config
Reinicie seu Pi depois de ativar o servidor SSH.
Depois que o Pi estiver conectado à sua rede doméstica com o SSH ativado, você poderá desativar a área de trabalho do X e desconectar o monitor, se desejar. É tão fácil conectar-se ao seu Raspberry Pi remotamente usando um utilitário como o Putty ou o terminal do seu Mac quanto digitar diretamente no Pi.
Conectando ao seu Raspberry Pi
Na maioria das vezes, você deseja executar seu servidor VPN Pi sem precisar conectá-lo a um monitor. Isso é fácil, desde que você tenha um cliente SSH (Secure Shell). Usando o SSH, você pode acessar a linha de comando do seu Raspberry Pi em outro computador.
Antes de desconectar o Raspberry Pi do monitor, execute o comando ifconfig para mostrar o endereço IP do seu Pi. Está listado no inet campo como mostrado acima. Você precisará conectar seu cliente SSH.
Se você estiver configurando seu servidor VPN Pi no Windows, use o Putty para conectar-se ao seu Raspberry Pi. Você pode baixar o Putty aqui gratuitamente.
Quando o Putty estiver em funcionamento, conecte-se ao seu Raspberry Pi digitando o endereço IP que você anotou anteriormente. Verifique também se o Tipo de conexão está configurado para SSH. Clique no Salve para criar um perfil para esta conexão.
Se você estiver instalando o Pi VPN usando um computador executando Mac ou Linux, não há motivo para baixar um cliente SSH. Basta usar o terminal do seu sistema operacional; suporta SSH por padrão.
Na primeira vez em que você se conectar ao seu Raspberry Pi, você será solicitado a salvar uma chave de segurança. Clique no sim para aceitar a chave como válida e salvá-la no seu computador.
Em seguida, digite sua senha. Se você ainda não o alterou, o Raspberry Pi usa framboesa como a senha padrão.
Você fez login com êxito quando vê o pi @ hostname pronto.
É uma boa ideia alterar sua senha padrão na primeira vez em que você se conectar por SSH. Você pode fazer isso usando o passwd comando.
Atualizando Raspbian para Pi VPN
Verifique se o seu sistema operacional está atualizado antes de instalar o Pi VPN.
Primeiro, obtenha uma lista de todos os softwares mais recentes. Você pode verificar as versões mais recentes de tudo o que instalou com o comando:
sudo apt-get update
Depois de ter a lista mais recente de software, diga ao seu Raspberry Pi para atualizar-se com o comando:
sudo apt-get upgrade
Você será solicitado a pressionar Y se você deseja atualizar e deve fazê-lo. Levará alguns minutos para que o processo de atualização seja executado, e você pode assistir ao progresso na tela.
Definindo um endereço IP estático
Como você dependerá do seu Raspberry Pi para serviços de rede, precisará saber onde encontrá-lo. Isso significa que você precisará definir um endereço IP estático antes de começar.
Você também pode aproveitar esta oportunidade para alterar seu nome de host. Entre outras coisas, isso mudará o prompt que você vê quando está conectado. É uma maneira fácil de diferenciar vários Pi, mas alterar o nome do host é opcional.
Você precisará editar /etc/dhcpcd.conf para definir um endereço IP estático. Antes de abrir o arquivo, saiba o endereço IP do seu roteador e os servidores DNS que você usará. Se você ainda não possui essas informações, pode obtê-las usando ifconfig.
Quando estiver pronto, use este comando para abri-lo no editor de nano texto:
sudo nano /etc/dhcpcd.conf
Role o arquivo até ver uma linha rotulada Exemplo de configuração de IP estático. Tudo o que você precisa fazer é remover o comentário da configuração de exemplo e fazer algumas substituições com seu endereço IP, roteador e gateways.
Descomentar endereço_ip estático e substitua o endereço IP estático que você deseja usar. Eu escolhi 192.168.1.2 porque é próximo ao endereço IP do roteador e fácil de lembrar.
Descomentar roteadores estáticos e domain_name_servers estáticos e insira seus próprios valores. Depois de fazer as alterações, pressione Ctrl + X para sair, então Y para confirmar que você deseja salvar.
Se você vai mudar seu nome de host, abra / etc / hostname dentro nano como root com o seguinte comando:
sudo nano / etc / nome do host
Altere seu nome de host no arquivo e pressione Ctrl + X para sair do editor e Y salvar o arquivo.
Você precisará fazer a mesma coisa com o arquivo em / etc / hosts. O comando para editar o arquivo é:
sudo nano / etc / hosts
Role para baixo até ver 127.0.0.1 e altere o nome do host para o que você escolher. No meu caso, isso é pivpn. Quando terminar, diga ao seu Raspberry Pi para reiniciar com o seguinte comando:
reinicialização do sudo
Após a reinicialização do Pi, atualize o endereço IP ao qual você está se conectando para refletir o novo endereço IP estático.
Descobrindo o firewall do Raspbian
Como o Raspbian é um sistema operacional Linux, o firewall é incorporado ao kernel e ativado por padrão. Mas em uma nova instalação, ela é deixada em aberto.
A política de firewall do Raspbian (iptables) é permitir todos os pacotes de entrada e saída e encaminhar tudo o que for solicitado. Mais tarde, mostrarei como bloquear o firewall, mas antes de começar, verifique se ele está completamente aberto para conexões.
Você pode usar iptables -L para listar suas regras atuais de firewall e verifique se elas correspondem às regras acima. Se você estiver alterando o firewall, poderá restaurá-lo para o padrão com os seguintes comandos:
sudo iptables -F
sudo iptables -P INPUT ACCEPT
sudo iptables -P SAÍDA ACEITAR
sudo iptables -P FORWARD ACCEPT
Escolhendo um nível de criptografia
Ao configurar sua VPN Pi, você será solicitado a escolher a força de sua criptografia. Você poderá escolher entre a criptografia RSA de 1024, 2048 e 4096 bits. Aqui está o que você deve ter em mente:
- A criptografia RSA de 2048 bits é o padrão
- O uso de criptografia mais fraca permite maior velocidade
- 2048 bits é bom para baixar e transmitir
- Usar criptografia mais forte fornece mais proteção
- 4096 bits é melhor usado para e-mail e navegação
A ativação do RSA de 4096 bits é tentadora, mas, se você estiver transmitindo vídeo ou reproduzindo músicas através da sua conexão, isso adicionará muita sobrecarga e atrasará visivelmente as coisas. A criptografia de 2048 bits é o padrão por um motivo, e eu recomendo que você a use na maioria dos casos.
Tempo limite durante operações longas
O SSH tem uma peculiaridade e, mais cedo ou mais tarde, você descobrirá por si mesmo. Durante operações longas, se você estiver conectado ao seu Pi por SSH, a conexão será interrompida quando o computador entrar em suspensão. Assim que a conexão SSH cair, o comando que você estava executando no seu Pi deixa de ser executado e é necessário reiniciar.
Um utilitário chamado tela facilita muito o manuseio de operações SSH longas. Usando a tela, você pode iniciar uma sessão vinculada a uma única operação. Em seguida, você pode conectar ou desconectar sempre que quiser e voltar à sessão para verificar seu progresso.
Depois de instalar a tela, você precisa conhecer apenas alguns comandos para usá-la. Comece usando o apt para instalar a tela:
tela de instalação do sudo apt-get
Depois que a tela estiver instalada, inicie-a com este comando:
tela
Parece que nada aconteceu, mas agora qualquer comando que você der não será interrompido se você desconectar.
Portanto, se sua conexão cair, basta fazer o SSH novamente no seu Raspberry Pi e digite:
tela -r
Você será reconectado automaticamente à sessão SSH, desde que seja o único ativo.
Se você tiver mais de uma sessão de tela ativa, poderá listá-las com o comando tela -ls. Se você deseja se conectar a uma sessão que vê na lista, precisará do ID de cinco dígitos. Então, para reconectar à sessão 11712, eu usaria este comando:
tela -r 11712
Depois de se acostumar a usá-lo, a tela torna o gerenciamento do seu Raspberry Pi com SSH muito mais agradável. Você pode aprender mais sobre todas as coisas diferentes das quais a tela é capaz aqui.
Instalando Pi VPN
Depois de resolver o seu Raspberry Pi, você pode se conectar a ele e começar a instalar a Pi VPN. Esta é a primeira parte de uma instalação com várias partes e fornecerá a funcionalidade de VPN de back-end necessária para conectar-se à Pi VPN. Nas etapas posteriores, instalaremos uma página da web de gerenciamento e configuraremos uma conexão VPN de saída para privacidade.
Iniciando o instalador
O Pi VPN é instalado através de um script que você baixa do site usando o ondulação ferramenta de linha de comando. O Curl é apenas uma ferramenta para baixar da Internet sem precisar de um navegador.
O comando que você precisa executar para começar a instalar o Pi VPN é:
enrolar -L https://install.pivpn.io/ | bater
Esse comando fará o download do script de instalação em pivpn.io e o direcionará para o interpretador de comandos bash para execução.
O processo de instalação começa imediatamente. Começa verificando apto para ver se você possui pacotes, você pode atualizar. Se você está seguindo este guia, já atualizou seu sistema para que o script vá para a próxima etapa.
Alguns pacotes necessários serão instalados e o instalador do Pi VPN será iniciado..
O instalador da VPN Pi
O instalador do Pi VPN é um assistente de configuração pseudo-gráfico, perfeito para executar uma conexão SSH. Quando sua tela fica azul e você recebe uma mensagem do instalador, pode começar.
Começar, pressione Enter para informar ao assistente de configuração da VPN Pi que você está pronto.
Você será avisado de que precisa definir um endereço IP estático. Eu recomendo que você faça isso antes de iniciar o assistente de configuração. Portanto, se você ainda não definiu uma saída de endereço IP estático agora e siga as instruções na seção anterior.
O Pi VPN mostrará o endereço IP detectado. Se esse for o endereço IP estático definido anteriormente, pressione o sim botão.
Você será avisado sobre conflitos de endereço IP. A maneira mais segura de evitar conflitos é procurar no seu roteador o intervalo DHCP e usar um endereço IP estático fora desse intervalo.
No meu caso, estou usando 192.168.1.2 e meu roteador atribui endereços DHCP entre 192.168.1.100 – 192.168.1.200, para que não haja perigo de conflito.
pressione Está bem seguir em frente.
Você quer ir com o padrão pi usuário na maioria dos casos, verifique se ele está selecionado e pressione o botão Está bem botão.
Eu recomendo que você clique sim para permitir atualizações de segurança autônoma no seu servidor VPN Pi. Seu Pi será exposto à Internet por meio do encaminhamento de porta, por isso é especialmente importante que a Pi VPN permaneça atualizada.
Se você clicar Não, tenha o cuidado de executar atualizações regulares por conta própria.
É normal que o console seja mostrado por um momento após a configuração das atualizações automáticas. O instalador voltará após alguns segundos.
Na maioria dos casos, você deseja configurar a VPN Pi usando o UDP protocolo. Se você planeja usar um provedor de VPN de assinatura para criar uma conexão de salto duplo ultra-segura, use TCP.
Anote o número da porta que você está usando para a Pi Pi; você vai precisar mais tarde.
Porta 1194 é o padrão para UDP, enquanto o TCP usa como padrão porta 443. Se você estiver seguindo as instruções para criar uma VPN de salto duplo, não use a porta TCP padrão ou isso causará um conflito mais tarde. Eu escolhi o TCP porta 4430 em vez disso, porque era fácil lembrar.
Configurando criptografia
Agora você poderá escolher seu nível de criptografia. Anteriormente, descrevi cada opção e por que você a escolheu. se você não tiver certeza sobre qual escolher, dê uma olhada no meu conselho.
Selecione o nível de criptografia que você deseja usar com a barra de espaço e pressione Está bem. Eu estou escolhendo correr Criptografia de 2048 bits para que eu possa transmitir vídeo pela conexão.
A geração dessas chaves pode demorar um pouco. Se você estiver usando criptografia de alto nível, levará ainda mais tempo. Seja paciente e deixe o Pi VPN gerar suas chaves de servidor.
Concluindo a instalação
Após a geração das chaves do servidor, o assistente de configuração da VPN Pi está quase completo. Restam apenas mais algumas etapas até que você possa se conectar.
Selecione Use este IP público a menos que você tenha uma conta DNS dinâmica. Se você estiver usando DNS dinâmico, escolha Entrada DNS e insira seu nome de host e configurações como de costume.
Em seguida, você terá que escolher um provedor de DNS para sua VPN. Eu recomendo Google para a maioria dos usuários, pois é gratuito e fácil. OpenDNS e Norton ambos fornecem implementações de DNS seguras se você estiver interessado em bloquear possíveis vazamentos de DNS. Você também pode escolher personalizadas se você estiver lidando com solicitações de DNS com Pi-hole.
O assistente de configuração informará como adicionar usuários na linha de comando. Na próxima etapa, instalaremos um aplicativo Web para ajudar a gerenciar usuários. Você também pode usar pivpn add.
Por fim, clique no botão sim e reinicie o seu Raspberry Pi.
Instalando a GUI do Pi VPN
Pi VPN GUI é uma ferramenta da web para Pi VPN. É opcional, mas seu uso facilita o gerenciamento de usuários e a adição de novos dispositivos. Eu recomendo que você instale.
Sempre que você adicionar um usuário ao PiVPN, você gerará um perfil * .ovpn. Você pode usar o Pi VPN GUI para criar a conta do usuário e facilitar o download do perfil.
Se você optar por não usar o Pi VPN GUI, precisará adicionar e gerenciar usuários com o pivpn add e remover pivpn comandos. Você também precisará copiar manualmente os perfis * .ovpn que são gerados, geralmente usando uma ferramenta de linha de comando como scp.
Preparando-se para instalar o Pi VPN GUI
Antes de instalar o Pi VPN GUI, você precisa atualizar o apt. Você precisará adicionar um repositório para fazer o download de todo o software exigido pela Pi VPN GUI. Veja como fazer isso.
Use o nano para editar a lista de fontes do apt. O comando é:
sudo nano /etc/apt/sources.list
Adicione a seguinte linha ao sources.list onde você encontrar um local:
deb http://mirrordirector.raspbian.org/raspbian jessie main contrib non-free rpi
Isso indica que não há problema em instalar pacotes do Debian Jessie, uma versão anterior. Isso é necessário porque alguns dos softwares em que a GUI Pi VPN Pi ainda não foram adicionados aos repositórios de extensão Debian.
Infelizmente, ter um link para uma versão antiga no seu sources.list o arquivo não é uma prática recomendada, mesmo que seja necessário no momento. Pode causar conflitos posteriormente, se você optar por instalar outro software. É uma boa ideia remover a linha que você acabou de adicionar depois de instalar esses pacotes de software.
Em seguida, salve e feche o nano. Atualize o apt com o comando:
sudo apt-get update
Quando a verificação estiver concluída, instale todos os pacotes atualizados com o comando:
sudo apt-get upgrade
É tudo o que você precisa fazer para adicionar o repositório necessário ao apt. Agora, instale os pré-requisitos para a GUI Pi VPN com o seguinte comando:
sudo apt-get install git apache2 php5 libapache2-mod-php5 php5-mcrypt espera geoip-bin
pressione Y quando solicitado, e deixe o instalador executar. Quando você terminar de instalar o software, precisará atualizar alguns arquivos de configuração para poder instalar a GUI Pi VPN.
Agora que o software obrigatório está instalado, você deve remover a linha que adicionou de /etc/apt/sources.list e corra atualização do sudo apt novamente.
Atualizando a configuração da web
A GUI do Pi VPN é um aplicativo da web e precisa de um servidor da web apache para funcionar corretamente. Instalamos o apache na etapa anterior, mas agora é necessário fazer algumas alterações antes que o Pi VPN GUI possa ser executado no servidor apache.
Primeiro, você precisará alterar a conta de usuário sob a qual o apache é executado. O padrão é uma conta não suportada e precisamos executá-la como o usuário pi em vez de. Edite o arquivo de configuração do apache usando o comando:
sudo nano /etc/apache2/apache2.conf
Role para baixo até ver a linha que diz Usuário $ (APACHE_RUN_USER) Seguido por Grupo.
Altere os valores para Do utilizador e Grupo para pi para ambos. Então aperte Ctrl + X sair e Y salvar.
Em seguida, altere o proprietário para o / var / www diretório que o apache usa para armazenar sites. Você pode fornecer ao usuário pi propriedade do diretório da web usando este comando:
sudo chown pi: pi -R / var / www
Quando terminar, mude para o / var / www / html diretório com este comando:
cd / var / www / html
Você deve concluir a instalação da GUI Pi VPN nesse diretório.
Download e instalação da GUI do Pi VPN
Depois de todo esse trabalho de configuração, é realmente muito fácil baixar e instalar a GUI do Pi VPN. Tudo o que você precisa fazer é verificar o projeto usando o git. Se você seguiu adiante, instalamos o utilitário git em uma etapa anterior.
Verifique se você ainda está no / var / www / html diretório e execute o comando:
git clone https://github.com/AaronWPhillips/pivpn-gui
O comando usará o git para clonar o diretório do projeto da Pi VPN GUI na raiz do seu servidor da web, disponibilizando-o como uma página da web. Você pode verificar se a instalação foi bem-sucedida usando o navegador.
Conectando-se à GUI da VPN Pi
Agora que a GUI do Pi VPN está instalada, você pode abri-lo no navegador e usá-lo para gerenciar os usuários do Pi VPN. Instalei o Pi VPN no meu Raspberry Pi com um endereço IP 192.168.1.2, para encontrar a GUI do Pi VPN em http://192.168.1.2/pivpn-gui.
Você deve usar o endereço IP que corresponde à sua instalação e abrir a GUI Pi VPN no seu navegador.
Você será capaz de saber se você se conectou com êxito quando receber uma solicitação de login. Se você não conseguir fazer o login, precisará reiniciar o Raspberry Pi.
Por enquanto, basta marcar um link para a GUI da Pi VPN para que você possa voltar com facilidade. O próximo passo é configurar uma conexão VPN de saída para criptografar sua conexão com a Internet. Se você preferir não se inscrever em um serviço como o IPVanish, pode avançar para configurar seu roteador e adicionar usuários.
Configurando uma conexão VPN de saída
Se você não configurar uma conexão VPN de saída, todo o tráfego dos dispositivos conectados à sua VPN se conectará à Internet usando o endereço IP público da sua LAN. Onde quer que você se conecte, os sites pensam que você está se conectando em casa. Isso nem sempre é uma coisa ruim; por exemplo, você pode querer assistir ao Netflix quando viaja ao exterior.
Mas, para tirar o máximo proveito da VPN Pi, recomendo que você use um provedor de VPN de saída e crie o que é chamado de conexão “salto duplo”.
A vantagem de uma conexão VPN de salto duplo é a criptografia completa de ponta a ponta para a Internet móvel quando você se conecta a um site por HTTPS. A segurança adicionada vai além de apenas dois túneis, já que o servidor VPN de saída nunca vê a solicitação de origem.
Em termos práticos, isso significa que os logs mantidos pelo seu provedor de VPN não serão capazes de identificar o dispositivo de origem de qualquer solicitação individual – tudo volta ao seu servidor VPN Pi. É outra camada de anonimato para tudo o que você faz online.
Se você estiver configurando o Pi VPN apenas para se conectar à sua rede doméstica remotamente, poderá pular esta etapa e seguir em frente. Mas se você estiver interessado em criar uma conexão à Internet segura e anônima para seus telefones, laptops, tablets e outros dispositivos, use uma conexão VPN de saída junto com o Pi VPN.
NEGÓCIO DO LEITOR: O IPVanish oferece uma avaliação gratuita de 7 dias para os clientes da Comparitech, se você ainda não possui um provedor de VPN.
Usando um roteador de gateway habilitado para VPN
Se você já possui um roteador de gateway que suporta uma conexão VPN de saída, seu trabalho está concluído. Como todo o tráfego deixará sua rede doméstica criptografada pelo roteador, você terá efetivamente uma VPN de salto duplo. Nesse caso, você pode parar e conectar seus clientes.
Se você estiver interessado em aprender a criar um roteador habilitado para VPN ou se tiver um que gostaria de configurar, temos guias para isso. Se você já possui um roteador habilitado para VPN e precisa configurá-lo como um cliente VPN, veja como escolher um provedor de VPN e configurar seu roteador.
O resto de nós precisará usar o Pi para lidar com a conexão e o roteamento de saída criptografados necessários para criar um segundo salto de VPN.
Usando o IPVanish como uma VPN de saída
A baixa latência do IPVanish torna uma ótima opção se você estiver configurando uma conexão VPN de salto duplo como essa, pois sua conexão está aguardando em dois servidores VPN para lidar com o tráfego. O processo será o mesmo para qualquer provedor de VPN que publique perfis OpenVPN para seus servidores.
Você precisará baixar um perfil de login automático e o certificado digital para o seu provedor de VPN. Se você estiver usando o IPVanish, esses arquivos estão disponíveis para download aqui.
Uma maneira fácil de obter os arquivos necessários no servidor VPN Pi é conectar-se via SSH e usar o wget comando para baixá-los da web. Verifique se o servidor Pi VPN está conectado à Internet, mude para o diretório apropriado e faça o download dos arquivos necessários com estes comandos:
cd / etc / openvpn
sudo wget http://www.ipvanish.com/software/configs/ca.ipvanish.com.crt
sudo wget http://www.ipvanish.com/software/configs/ipvanish-US-Chicago-chi-a01.ovpn
Observe que você deve alterar o segundo URL para corresponder ao servidor IPVanish com o qual deseja se conectar. No meu caso, estou usando um servidor IPVanish em Chicago.
Como você se conecta ao IPVanish automaticamente usando o serviço OpenVPN, é importante renomear o perfil de registro automático * .ovpn que você acabou de baixar. O serviço OpenVPN se conectará apenas a perfis com a extensão de arquivo * .conf. Use este comando para renomear o arquivo para outgoing.conf:
sudo mv /etc/openvpn/ipvanish-US-Chicago-chi-a01.ovpn /etc/openvpn/outgoing.conf
Agora que os arquivos foram baixados e preparados, você está pronto para configurar a conexão com seu provedor de VPN de saída.
Configurando a conexão IPVanish
É mais fácil acompanhar duas conexões VPN simultâneas se você renomear cada interface para refletir o que ela faz. Eu gosto de usar / dev / tun-entrante e / dev / tun-outgoing para se referir às diferentes interfaces de rede.
Renomear as interfaces também garante que as conexões não se alternem entre serem nomeadas / dev / tun0 e / dev / tun1, dependendo de qual deles ficar online primeiro. Os nomes dos dispositivos são importantes para saber se você deseja configurar seu firewall corretamente.
Você pode alterar o nome de cada interface editando as configurações de conexão. Cada conexão OpenVPN possui um arquivo * .config associado. Alterar as primeiras linhas em cada arquivo renomeia a interface de rede.
Comece editando as configurações da Pi VPN, localizadas em /etc/openvpn/server.conf, com o seguinte comando:
sudo nano /etc/openvpn/server.conf
Mude a primeira linha de:
dev tun
Para o seguinte, inserindo uma nova linha:
dev tun-entrante
tun do tipo dev
pressione Ctrl + X e depois Y para salvar suas alterações. Na próxima vez em que o Pi VPN ficar online, ele criará um dispositivo chamado / dev / tun-entrante.
Você precisará editar o arquivo de configuração recebido em /etc/openvpn/outgoing.conf do mesmo jeito. Abra-o com este comando:
sudo nano /etc/openvpn/outgoing.config
Como antes, altere a primeira linha e insira um segundo na parte superior do arquivo de configuração. Este deve ler:
dev tun-outgoing
tun do tipo dev
Mas a conexão VPN de saída também precisa de outras alterações. Você precisará apontar para o certificado do servidor baixado em uma etapa anterior e fornecer seu nome de usuário e senha para que a VPN possa se conectar automaticamente.
Edite seu outgoing.conf para usar o certificado do servidor IPVanish. Mude a linha que começa com ca ler:
ca /etc/openvpn/ca.ipvanish.com.crt
Atualize ou adicione auth-user-pass para apontar o IPVanish para o seu arquivo de senha, que criaremos em breve:
auth-user-pass / etc / openvpn / passwd
Sua conexão VPN de saída também deve ser informada para não encaminhar o tráfego da LAN. Você precisará adicionar esta linha ao final do seu outgoing.conf para acessar sua rede local através do Pi VPN:
rota 192.168.1.0 255.255.255.0 192.168.1.1
Lembre-se de usar o endereço IP adequado para sua LAN, se for diferente do meu acima. Salve suas alterações em /etc/openvpn/outgoing.conf no nano pressionando Ctrl + X, então Y.
Agora, crie um arquivo de senha que o OpenVPN possa usar para efetuar login no IPVanish com suas credenciais. O formato deste arquivo não poderia ser mais simples, é apenas seu nome de usuário na primeira linha e sua senha na segunda. Use este comando para criar o arquivo e abra-o para edição:
sudo nano / etc / openvpn / passwd
Digite seu endereço de e-mail na primeira linha e sua senha na segunda e pressione Ctrl + X, Y para salvar o arquivo. Desde a / etc / openvpn / passwd contém suas credenciais em texto sem formatação, é importante que você proteja o arquivo. Você pode bloquear o acesso a / etc / openvpn / passwd usando chmod como isso:
sudo chmod +600 / etc / openvpn / passwd
Isso garantirá que apenas o usuário root possa ler ou gravar o passwd , que é o nível mínimo de segurança necessário para armazenar suas credenciais em texto sem formatação.
Atualizando a tabela de roteamento do seu Raspberry Pi
Antes de colocar a VPN de saída on-line para proteger sua conexão com a Internet, você precisa configurar o Raspberry Pi para direcionar o tráfego corretamente. Lembre-se de substituir o endereço IP estático do seu Pi se for diferente do meu abaixo.
Você precisará criar ou editar / lib / dhcpcd / dhcpcd-hooks / 40 rotas e adicione algumas linhas. Aqui está o comando:
sudo nano / lib / dhcpcd / dhcpcd-hooks / 40 rotas
Adicione estas duas linhas ao script:
regra ip adicionar a partir da pesquisa 192.168.1.2 101
rota ip adicionar padrão via 192.168.1.1 tabela 101
Então aperte Ctrl + X, Y para salvar suas alterações.
Essa é a única alteração que você precisará fazer na tabela de roteamento do seu Raspberry Pi. Depois de salvar as alterações e reiniciar o Pi, você poderá executar conexões VPN de entrada e saída ao mesmo tempo.
Protegendo suas solicitações de DNS
Para tornar sua conexão realmente segura, é necessário interromper o vazamento de DNS. Um vazamento de DNS ocorre quando sua conexão VPN segura consulta sites usando um servidor DNS fora da rede criptografada. Isso expõe seus clientes VPN a perigos como log de DNS e ataques do tipo intermediário.
A solução é forçar todos os clientes VPN de entrada a usar o servidor DNS seguro do seu provedor de VPN de saída. Nesse caso, forçarei meus clientes a usar os servidores DNS da IPVanish.
Para alterar seus servidores DNS sem precisar reinstalar o Pi VPN, é necessário atualizar /etc/openvpn/server.conf. Abra-o para edição usando este comando:
sudo nano /etc/openvpn/server.conf
Role pelo arquivo até ver as duas linhas que empurrar Configurações de DNS para seus clientes VPN. Instalei o Pi VPN usando os servidores DNS do Google inicialmente, então as duas linhas que precisam ser alteradas no meu server.conf parece com isso:
pressione “dhcp-option DNS 8.8.8.8”
pressione “dhcp-option DNS 8.8.4.4”
Se você estiver usando o IPVanish, altere estas linhas para ler:
pressione “dhcp-option DNS 198.18.0.1”
pressione “dhcp-option DNS 198.18.0.2”
Se você estiver usando um provedor VPN diferente, precisará procurar on-line para encontrar os servidores DNS.
Depois de editar o arquivo, salve-o com Ctrl + X, Y. Suas alterações entrarão em vigor na próxima vez que o serviço OpenVPN for reiniciado, e seus clientes VPN usarão automaticamente os servidores seguros da IPVanish.
Conectando ao IPVanish
Antes de configurar o OpenVPN para conectar-se automaticamente ao seu provedor de VPN de saída, você deve testar a conexão. Na linha de comando, digite:
serviço sudo openvpn @ start de saída
A tela será preenchida com texto mostrando o estado da conexão VPN. Dupla verificação /etc/openvpn/outgoing.conf se você tiver problemas para se conectar e verifique se seu nome de usuário e senha estão corretos e em linhas separadas em / etc / openvpn / passwd.
Quando você se conectar com sucesso, desconecte-se da VPN pressionando Ctrl + C. A última etapa na criação de uma conexão VPN de saída é configurá-la para iniciar automaticamente.
Iniciando as conexões VPN automaticamente
Depois que sua conexão for testada, você deve configurar as duas conexões VPN para iniciar automaticamente. O OpenVPN facilita, permitindo que você se refira a cada conexão de acordo com o nome do arquivo de configuração.
Para começar, você precisará editar o arquivo de configuração global do OpenVPN com este comando:
sudo nano / etc / default / openvpn
Em seguida, remova o comentário desta linha:
AUTOSTART ="escritório em casa"
E mude para ler:
AUTOSTART ="saída do servidor"
Depois de terminar, salve suas alterações com Ctrl + X, Y e reinicie o servidor VPN Pi com o seguinte comando:
reinicialização do sudo
Quando o Raspberry Pi for reiniciado, o servidor VPN Pi será conectado ao provedor de VPN de saída e estará pronto para começar a lidar com as conexões de entrada..
Configurações do roteador Pi VPN
A ideia de uma VPN é que ela é um túnel de fora da sua rede para o interior. Isso significa que você precisará configurar seu roteador para permitir determinadas conexões. Fazemos isso usando encaminhamento de porta, e pode ser muito fácil ou um pouco mais difícil, dependendo do seu roteador.
Estou usando um roteador Linksys modelo de entrada para este guia, mas todo roteador consumidor suporta encaminhamento de porta. Seu procedimento pode ser um pouco diferente, mas a maioria dos fabricantes de roteadores oferece guias de encaminhamento de porta na Web.
Encaminhando a porta VPN
Nenhum cliente VPN pode se conectar à sua rede, a menos que você encaminhe a porta especificada anteriormente. Normalmente, todas essas solicitações são bloqueadas pelo roteador por motivos de segurança, mas precisamos fazer uma exceção especial. Nesse caso, é porque precisamos permitir que os clientes VPN se conectem ao Pi VPN pela Internet.
Comece fazendo login no seu roteador. Na maioria dos casos, você pode fazer isso clicando aqui ou aqui. Caso contrário, encontre o endereço IP do seu roteador e cole-o no navegador.
Depois de fazer login, clique nos menus até encontrar o encaminhamento de porta. No meu caso, está em Aplicativos e jogos – Configurações de firewall.
Clique para adicionar uma nova porta. Você precisará saber o número da porta que você selecionou anteriormente. Você também precisará do endereço IP estático do seu servidor VPN Pi. No meu caso, isso é porta 1134 e 192.168.1.2.
Clique Salve quando você configurar o encaminhamento de porta. Agora, os clientes VPN poderão fazer login quando estiverem fora da rede local.
Nota dos clientes do Comcast Xfinity
Não consegui que meu roteador Comcast Xfinity encaminhasse portas corretamente. O problema era que meu roteador possui um sistema interno de detecção de intrusões (IDS), que é usado como um firewall para impedir ataques maliciosos na sua rede doméstica. O IDS não pode ser desativado e a conexão a uma VPN através do roteador Comcast o aciona, bloqueando a conexão.
Minha solução foi colocar o roteador Xfinity no modo bridge e conectar um roteador sem fio a ele. Pude usar o roteador sem fio para ativar o encaminhamento de porta e permitir conexões à minha VPN. Se você é um usuário da Comcast com problemas no encaminhamento de portas, deixe um comentário abaixo para obter ajuda.
Gerenciando usuários da VPN Pi
Todo dispositivo que se conecta à sua VPN precisa ter uma conta de usuário associada. Quando você cria cada conta, o Pi VPN gera um perfil OpenVPN. Mais tarde, você usará esses perfis * .ovpn em seus dispositivos para configurá-los automaticamente.
Criando perfis com a GUI Pi VPN
Veja como adicionar usuários à Pi VPN. Quando terminar, você poderá fazer o download do perfil necessário para se conectar à sua rede privada.
Clique no Criar perfil VPN para adicionar um novo usuário.
Em seguida, digite um nome de usuário e clique no ícone Criar perfil botão. Eu recomendo nomear cada usuário após o dispositivo com o qual você planeja se conectar. Mais tarde, fica fácil saber rapidamente quais dispositivos estão conectados à VPN.
Uma janela de status é aberta para que você possa acompanhar o processo de criação do perfil. A geração de chaves criptográficas pode demorar, especialmente se você estiver usando criptografia de 4096 bits.
Às vezes, a GUI do Pi VPN leva você a uma mensagem 404 depois de criar um perfil com sucesso. Clique no pivpn link no canto superior esquerdo para retornar ao navegador de perfil.
Você verá um caminho para o seu Perfil do cliente OpenVPN, e um botão para Baixar isto. Você pode clicar no Revogar cliente para remover uma conta de usuário. A revogação de uma conta fará com que o cliente seja desconectado imediatamente.
Clique no Criar perfil VPN até que você tenha um perfil de cliente para cada dispositivo que deseja conectar à sua VPN. Por exemplo, eu tinha perfis para meu telefone e tablet, juntamente com um Raspberry Pi que eu uso para transmitir TV.
Depois de ter perfis para cada dispositivo, você pode passar para a próxima etapa e conectar-se à sua VPN.
Removendo perfis com o Pi VPN GUI
Às vezes, você tem um problema com um perfil ou deseja removê-lo da sua VPN. Você pode fazer isso revogando o cliente na Pi VPN GUI.
Abra a GUI do Pi VPN e entre. Você pode ver uma lista de perfis ativos na tela principal.
Clique no Revogar perfil para o dispositivo que você deseja remover e o perfil será excluído.
Quando você atualiza a GUI do Pi VPN, pode ver que o perfil foi removido. Lembre-se de que isso não exclui o arquivo * .ovpn antigo do seu disco rígido. Você precisará remover o arquivo manualmente usando este comando:
rm ~ / ovpns / profile_name.conf
Certifique-se de substituir profile_name.conf com o nome do seu perfil de login automático do OpenVPN.
Mesmo se você não excluir perfis revogados, não há risco de segurança. Você nunca poderá fazer login usando um perfil revogado, mas eu recomendo que você os exclua para manter as coisas limpas.
Instalando um cliente VPN móvel Pi
Se você estiver se conectando à Pi VPN em um dispositivo móvel, recomendo o OpenVPN Connect, o cliente oficial. É totalmente gratuito e se integra muito bem ao iOS e Android.
O primeiro passo é abrir a App Store ou Play Store, dependendo do seu dispositivo. Nos dois casos, procure por OpenVPN Connect. Concorde com os termos e instale o aplicativo como de costume.
Veja também: Como instalar o cliente e servidor OpenVPN em um roteador DD-WRT
Importando o perfil de login automático da Pi Pi
Você precisa ter certeza de que está conectado à sua rede doméstica por wifi e abrir a GUI da VPN Pi em um navegador. Lembre-se de que o caminho foi definido muito antes e inclui o endereço IP local do seu servidor VPN Pi. No meu caso, é http://192.168.1.2/pivpn-gui/.
Entre com o nome de usuário pi e a senha adequada.
Usuários do iOS: Observe que a GUI do Pi VPN funciona apenas corretamente no Safari. Usuários do Android podem se conectar ao navegador de sua escolha.
Encontre o perfil que você criou para o seu dispositivo móvel e clique no Baixar botão.
Use o OpenVPN connect para importar o arquivo * .ovpn. Quando o OpenVPN Connect for iniciado, clique no botão verde mais. Sua conexão VPN Pi está pronta para conectar-se.
Conectando-se à Pi VPN
Tudo o que resta é abrir o túnel para a VPN Pi usando o aplicativo OpenVPN Connect.
No aplicativo, clique no botão de alternância para iniciar a conexão. Ele deve ficar verde e seu telefone exibirá um emblema de VPN na área de notificação.
Você pode verificar se sua conexão VPN está funcionando, visitando um site como http://www.ipaddress.com. Se você não está adicionando um computador à sua VPN, você terminou e pode pular para a próxima seção.
Instalando um cliente VPN Pi no seu computador
Muitos clientes VPN diferentes estão disponíveis para Windows e Mac, mas eu recomendo o cliente OpenVPN oficial. É gratuito e fácil de instalar e permite importar sua conexão Pi VPN com apenas alguns cliques.
Faça o download do cliente oficial aqui e instale-o como faria com qualquer outro programa.
Importando o perfil de login automático da Pi Pi
Se o computador que você está adicionando à VPN estiver na sua LAN, você poderá fazer o download do perfil de login automático na Pi VPN GUI. Navegue até o caminho em que você instalou a GUI do Pi VPN anteriormente, no meu caso, http://192.168.1.2/pivpn-gui/.
Se o computador que você está adicionando ao Pi VPN estiver em um local remoto, você não poderá se conectar diretamente à GUI do Pi VPN. Nesse caso, você precisará fazer o download do perfil de login automático usando um dispositivo na LAN. Após o download, anexe-o a um e-mail e envie-o para o seu computador remoto. Você pode baixar o perfil do seu e-mail e continuar como de costume.
Depois de baixar o perfil de logon automático, clique com o botão direito do mouse no ícone OpenVPN na bandeja do sistema e clique em Importar.
Conectando-se à Pi VPN
Após a adição da conexão Pi VPN, clique com o botão direito do mouse no ícone OpenVPN na bandeja do sistema e clique no nome do perfil para conectar-se..
Você verá uma janela de status com o log de conexão. Se o seu computador não se conectar corretamente, você poderá copiar e colar o código de erro para descobrir o que deu errado. Na maioria dos casos, se você não consegue se conectar à sua VPN, é porque o encaminhamento de porta não foi ativado corretamente.
Uma vez conectado, verifique se a VPN está funcionando, visitando um site como http://www.ipaddress.com.
Mais ideias para Pi VPN e sua rede
Ter um servidor acessível de qualquer lugar o torna o candidato perfeito para muitos projetos diferentes. Aqui estão algumas idéias para o seu Raspberry Pi agora que você concluiu a configuração do servidor VPN Pi.
Bloquear o firewall
O Raspberry Pi é fornecido com um firewall muito permissivo por design, mas é uma boa ideia ser mais restritivo quando você estiver executando um servidor VPN.
Aqui estão algumas regras de amostra para você começar. Lembre-se de substituir o PROTOCOLO e PORTA com o que você escolheu para o seu servidor VPN Pi. Linhas começando com # são comentários e não precisam ser digitados.
#Aceite o tráfego recebido em todas as interfaces, mas limite eth0 apenas à VPN
sudo iptables -A ENTRADA -i eth0 -m state –state NEW -p PROTOCOLO –dport PORT -j ACEITAR
sudo iptables -A INPUT -i tun-entrada -j ACEITAR
sudo iptables -A INPUT -i tun-outgoing -j ACEITAR
#Permite encaminhar tráfego entre sub-redes
sudo iptables -A FORWARD -i tun-entrada -j ACEITAR
sudo iptables -A FORWARD -i tun-outgoing -j ACEITAR
#Forward tráfego através de eth0
sudo iptables -A FORWARD -i tun-entrante -o eth0 -m state –state RELACIONADO, ESTABELECIDO -j ACEITA
sudo iptables -A FORWARD -i tun-outgoing -o eth0 -m state –state RELACIONADO, ESTABELECIDO -j ACEITA
#Forward tráfego através da entrada de tun
sudo iptables -A FORWARD -i eth0 -o tun-entrante -m state –state RELACIONADO, ESTABELECIDO -j ACEITA
sudo iptables -A FORWARD -i tun-outgoing -o tun-entring -m state –state RELACIONADO, ESTABELECIDO -j ACEITA
# Tráfego encaminhado através da saída de tun
sudo iptables -A FORWARD -i eth0 -o tun-outgoing -m state –state RELACIONADO, ESTABELECIDO -j ACEITA
sudo iptables -A FORWARD -i eth0 -o tun-outgoing -m state –state RELACIONADO, ESTABELECIDO -j ACEITA
#MASQ tun-entrante como eth0
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Depois de terminar, use este comando para salvar suas alterações:
sudo iptables-persistente salvar
Lembre-se de que você pode listar as regras do iptables atualmente ativas com o comando:
sudo iptables -L
Mudar para DNS dinâmico
As adições ao DNS dinâmico permitem que você use um nome de host em vez de um endereço IP para se conectar ao servidor VPN Pi, mesmo se você não tiver um endereço estático do seu ISP. Por exemplo, você pode usar o DNS dinâmico para redirecionar vpn.websitename.com para o seu servidor VPN. Se você está pensando em hospedar serviços da Web ou email, em muitos casos, pode executar tudo do mesmo Pi.
É melhor executar novamente o instalador da VPN Pi se você mudar para o DNS dinâmico. Porém, depois de atualizar suas configurações, você poderá acessar o servidor Pi VPN no URL personalizado selecionado.
A mudança para o DNS dinâmico elimina a necessidade de reemitir perfis de clientes VPN Pi toda vez que seu endereço IP público é alterado.
Configurar um servidor de arquivos
Seu Raspberry Pi é um ótimo servidor de arquivos Samba. Você pode conectar algumas unidades USB, instalar lvm2 criar um sistema de arquivos gigante abrangendo todos os discos e compartilhar seus arquivos com clientes VPN.
A ativação do Samba na VPN exige um pouco de trabalho, mas é extremamente útil poder acessar seus arquivos, músicas e filmes a partir de seus dispositivos móveis.
Instale o orifício Pi
Ao definir o provedor DNS durante a instalação da VPN Pi, você pode facilmente instalar o Pi-hole, alterar seu provedor DNS personalizado para 127.0.0.1 e bloquear anúncios para celular automaticamente na VPN.
A execução do pi-hole em uma conexão VPN é a melhor maneira de bloquear anúncios para celular sem fazer root no telefone. Você pode até desativar os anúncios precedentes do YouTube e parar de ver produtos patrocinados na Amazon. Dê uma olhada no guia da Comparitech para Pi-hole para mais.
Executar um seedbox
Se você tem uma VPN de saída em funcionamento, sua conexão com a Internet é completamente criptografada. Ter uma conexão anônima à Internet é ótimo para torrent, e transformar seu servidor Pi Pi em um seedbox com Transmission é realmente fácil.
Como a conexão já está criptografada, tudo o que você precisa fazer é instalar o Transmission e o Web client. Você poderá adicionar torrents do seu telefone ou laptop, e eles serão baixados em casa.
Mãos à obra com Pi VPN
Acho que não estou contando segredos quando digo que sou um grande nerd. Minha rede doméstica está cheia de dispositivos inteligentes, como luzes Hue, um termostato Nest e alguns alto-falantes Sonos. Eu tenho um servidor de arquivos com a Transmission, um servidor Plex, dispositivos executando o Kodi e várias probabilidades e fins, como uma impressora de rede e um servidor DNS executando o Pi-hole para bloquear anúncios para celular.
Se sua rede doméstica for parecida com a minha, eu diria que o Pi VPN é um divisor de águas. Não só consegui desligar todas as portas, exceto uma no meu firewall, mas minha internet móvel está completamente criptografada e posso acessar minha LAN de qualquer lugar. Minha segurança de rede melhorou drasticamente e não preciso configurar o encaminhamento de portas no meu roteador toda vez que adiciono um novo dispositivo.
Depois de passar uma tarde configurando as coisas, o Pi VPN é quase inacreditavelmente bom. Muitos projetos para o Raspberry Pi são chamativos e divertidos, mas acabam sendo bastante inúteis. Fico feliz em informar que a VPN Pi é uma grande exceção.
“Raspberry Pi” da Lucasbosch licenciado sob CC 3.0
A execução de um servidor VPN próprio é uma excelente maneira de aumentar a segurança móvel e obter acesso à sua LAN a partir da Internet. No entanto, configurá-los pode ser notoriamente difícil. A VPN Pi transforma o Raspberry Pi em um servidor VPN barato e eficaz, usando uma instalação guiada que faz a maior parte do trabalho duro para você. Com apenas algumas etapas extras, você também pode ativar a criptografia de ponta a ponta e executar toda a sua Internet móvel através de um túnel seguro e anônimo. É uma ótima solução para ignorar filtros de sites no trabalho ou na escola e conectar-se facilmente a dispositivos em sua rede doméstica. Além disso, o Pi VPN é uma alternativa mais segura para encaminhar muitos serviços através do seu roteador, pois usa criptografia forte para manter sua LAN segura. Recomendo o IPVanish como provedor VPN para este projeto, pois possui alguns dos menores tempos de latência e largura de banda suficiente para garantir uma conexão à Internet sem problemas.