PiVPN: É fácil transformar o Raspberry Pi num servidor de VPNs
O Raspberry Pi (RPI) tem um conjunto de características das quais podemos tirar partido para ter em funcionamento os mais diversos serviços. Além do baixo consumo energético, o RPI tem também algum poder computacional e nesse sentido nada melhor que usá-lo para garantir a segurança das nossas comunicações.
Nesse sentido, hoje vamos mostrar como é fácil transformar o RPI num servidor de VPNs usando o PiVPN. Não tem um RPI? Veja aqui a nossa promoção.
O PiVPN é um projecto que permite facilmente instalar e configurar o OpenVPN no RPI. Além do processo de instalação simplificado, o PiVPN dá a possibilidade de se criarem e gerirem utilizadores.
Para que preciso de uma VPN?
Uma rede privada virtual (VPN – Virtual Private Network) garante a segurança das comunicações ponto a ponto, nomeadamente a privacidade, integridade e autenticidade dos dados. Para isso esta tecnologia faz a criptografia dos pacotes, garantindo que estes não sejam lidos por terceiros.
Outra das vantagens da utilização de uma VPN tem a ver com a questão da localização, que fica “mascarada”, ou seja, o endereço público associado à comunicação passa a ser o do servidor VPN onde estamos ligados.
Criptografia, o que é?
Criptografia é o estudo dos princípios e técnicas pelas quais a informação pode ser transformada da sua forma original para outra ilegível, de forma que possa ser conhecida apenas por seu destinatário (detentor da "chave secreta"), o que a torna difícil de ser lida por alguém não autorizado. Assim sendo, só o receptor da mensagem pode ler a informação com facilidade. In Wikipédia
Com instalar o PiVPN no Raspberry Pi ?
Como referido, o PiVPN é um script que permite facilmente criar um servidor VPN, usando o OpenVPN. Para executar o PiVPN no seu RPI basta que siga os seguintes passos:
Passo 1) Obter e executar o PiVPN
Para isso devem abrir a consola e introduzir o seguinte comando:
sudo curl -L https://install.pivpn.io | bash |
Passo 2) Início do Processo de Instalação
Interface e endereço IP
Para que tudo funcione sempre bem, o RPI deve ter associado um endereço estático.
Para isso, indicamos qual a interface de rede que pretendemos associar à VPN (na prática é indicar qual a interface que neste momento nos garante o acesso à Internet). No nosso caso vamos escolher eth0.
Caso tenha o RPI ligado via interface wireless deve escolher a interface wlan0.
O serviço questiona se pretendemos manter o IP privado associado ao RPI. No âmbito deste tutorial vamos indicar que sim. Para tal basta seleccionar Yes.
Local para gravar configurações
Vamos agora indicar onde vão ser guardas as configurações ovpn. Estas informações vão depois ser necessárias para os clientes.
No nosso caso, como apenas temos um utilizador criado no RPI, as configurações vão ser guardadas em /home/rpi/ovpn/
Actualizações de Segurança
Por questões de segurança (óbvias), uma vez que iremos abrir um porto do sistema, vamos activar a opção que permite a instalação automática de actualizações de segurança no sistema.
Para activar as actualizações de segurança basta seleccionar Yes.
Protocolo e porto do OpenVPN
Relativamente ao protocolo em uso, devem escolher UDP. Caso tenhamos necessidades de usar TCP, devemos fazer essa escolha.
Por omissão o porto definido para o OpenVPN é o 1194. Podem escolher outro por questões de segurança. Para este tutorial vamos manter o 1194.
Nível de Encriptação
Relativamente ao nível de encriptação aconselhamos que no mínimo sejam criadas chaves de 2048 bits. Este processo demora alguns minutos, mas o nível de segurança é também mais elevado.
Por uma questão de rapidez de criação de chaves, escolhemos uma encriptação de 1024 bits (apenas para a apresentação deste tutorial).
Recebemos em seguida a indicação que as chaves vão ser geradas.
DNS
Relativamente ao DNS, podem usar o do vosso operador ou então escolher um serviço de DNS público.
Para a nossa configuração vamos escolher o serviço de DNS da Google que é, provavelmente, o mais rápido.
E está feita a instalação do OpenVPN. O próximo passo é criar utilizadores para acesso remoto.
Criação de utilizadores
A criação de utilizadores é relativamente simples. Para isso basta executar o comando pivpn add e indicar os dados solicitados. Após a criação do cliente será também criado o perfil ovpn em /home/pi/ovpn, que depois iremos usar nos clientes.
Em próximos tutoriais, vamos ensinar a configurar o cliente VPN em vários sistemas e também a fazer a gestão e manutenção do OpenVPN (do lado do servidor). Não se esqueçam que o servidor de VPN deverá ter associado um endereço público ou então devem configurar o mecanismo de portforwarding no router (apresentaremos também um tutorial com estas configurações).
Alguma dúvida ou questão deixem nos comentários.
Este artigo tem mais de um ano
em que SO foi esta instalação ?
Pipplware 🙂
Que diferença existe neste tutorial para o outro apresentado em Tutorial OpenVPN + OpenSSL no Raspberry PI??
Este é um script que facilita a instalação e posterior gestão das VPNs criadas.
PP
Questão: o tráfego é encriptado do ponto onde estamos a aceder até ao raspberry pi, no entanto ao aceder por exemplo ao banco como funciona a ligação entre o rasp e o banco? Sem vpn ?
Essa já vem cifrada com o certificado SSL.
Então qual a vantagem do VPN face a uma qq ligação segura ?
Se quiseres aceder ao banco (homebanking) através de uma rede Wi-Fi insegura, ligaste à tua VPN e depois acedes ao homebanking.
Basicamente garante-te mais segurança pois, todo o tráfego vai passar pela tua VPN. Se configurares na rua de casa, o tráfego vai passar pela tua rede de casa.
Do ponto da segurança praticamente nenhuma.
As principais já aqui foram mencionadas: deslocalização do IP e protecção acrescida nas redes inseguras, como o Wi-Fi público. Quando te ligas ao banco a partir de uma rede insegura podes ter uma falsa sensação de segurança, pois o teu telefone pode ser alvo de inúmeros ataques enquanto acedes.
Ou então mesmo quando estás a tentar ligar a algum serviço e a rede onde te encontras bloqueia esse serviço. Uso vpn através da porta 443 (https) e consigo fazer passar todo o tráfego por aí. Por exemplo se bloquearem o irc através da vpn acedo sem problemas. O grande problema que eu encontro é que em casa tenho adsl (o upload é muito baixo) o que torna a utilização da vpn para casos muito específicos.
falta o exemplo de um cliente…
sim, no próximo tutorial
Isto dá para aceder ao NAS lá de casa desde um PC noutro sitio tipo emprego ou casa dum amigo? É possível nunca box Android?
Aonde está o próximo tutorial para ligar o servidor ? da parte do cliente .
Daria para ligar um smartTV o servidor ?
Como se acede á consola no pipplware?
Podes ver aqui: https://pplware.sapo.pt/linux/pipplware-algumas-dicas-de-utilizacao-parte-i/
Boas…
Gostaria de saber se com esta solução eu nos meus pc´s de casa navego com uma ligação em que tenho o meu ip publico oculto.
Digo isto porque gostava de sacar torrent´s e navegar sem ser controlado como já acontece em alguns países pelas autoridades.
Obrigado
O IP seria o do servidor de VPN. Outra solução seria comprar um VPS (arranjas muito baratos) e configurar um VPN, ou seja, todo o trafego que fizesses teria o IP do VPS (usei isto muitas vezes para simular trafego dos Estados Unidos, por exemplo).
Não, com esta solução apenas é possibilita entrares na tua rede de casa a partir de qq parte do mundo.
Se estiveres, p.e, na China, ligado á VPN, vais poder ver os sites que vez em portugal, porque na pratica estás a aceder ao conteúdo da Internet a partir de tua casa. O Controlo do tráfego é feito em Portugal(de acordo com as regras vigentes) .
A ligação China Portugal é feito por um canal seguro(cifrado), que em teoria e dependo da força das tuas chaves de segurança, é praticamente impossível desencriptar em tempo útil ao ponto de conseguir em tempo real bloquear tráfego especifico. …
Podem impedir te de usar a VPN nao é assim tao simples, embora nao saibam oq ue vai la dentro simplesmente nao te ligas 😀 porta 443 resolve
Bom script, não conhecia! Que venha a segunda parte!
como posso comprar o dito? não vejo.
Uma pergunta talvez parva, mas não é um dos pontos de segurança de uma vpn estar deslocalizada fisicamente?
Depende sempre do que queres fazer. Podes pensar numa VPN como um cabo de rede desde o cliente até à outra rede. Para trabalhares dentro de uma empresa convém que esteja lá dentro. Assim é como se estivesses a trabalhar no escritório (impressões, acesso ao shares de redes, programas internos, etc etc)
o PI lida bem com todo o processamento necessário em site2site?
Podiam fazer um post que junte todos os artigos sobre dicas sobre o raspberry pi.
Não havendo uma categoria própria, torna-se difícil filtrar só pela caixa de pesquisa.
Sim, vamos fazer, mas podes usar a tag: https://pplware.sapo.pt/tag/raspberry-pi/
Tenho o meu PI configurado como NAS…é possivel configurá-lo agora como servidor VPN, mantendo o NAS e ele cumprir com ambas as funções?
No meu caso, para conseguir instalar, tive que executar o comando com o parâmetro -r, ou seja:
sudo curl -L -r https://install.pivpn.io | bash
Bom artigo,
Para quando a segunda parte?
Boa tarde,
Durante a instalação do PiVPN aparece-me a seguinte mensagem:
: error fetching interface information: Device not found
É normal? O Interface que selecionei foi o wlan0 e sei que esse interface está valido e a funcionar.
Obrigado.
Já resolvi o outro problema mas agora tenho outro:
Fri Jan 20 11:16:29 2017 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Fri Jan 20 11:16:29 2017 TLS Error: TLS handshake failed
Já alguém enfrentou este problema?
Esse já tive e era um problema de configuração na parte dos certificados, do que eu me lembro.
Tenho é um problema porque não consigo resolver nomes na rede interna, mesmo tendo um dns interno como primário.
quando escrevo pivpn add ele diz-me que o comando não existe …
Ajuda?!
Já consegui resolver o meu problema.
mas agora quando tento conectar diz “waiting for server” porquê? Já abri portas, já fiz tudo … e a VPN mesmo em rede local não funciona!
Seria interessante um tutorial de vpn’s que permitisse bridge vpns permitindo a junção de 2 pontos remotos apartir do mesmo segmento de LAN. Por exemplo com recurso ao softether.
Para quando os próximos tutorias? Mais propriamente esta parte “…Em próximos tutoriais, vamos ensinar a configurar o cliente VPN em vários sistemas…”
Cumprimentos
Para no meu PC fazer uso da VPN, basta configurar o Gateway do PC para o numero de IP do Raspberry Pi?
Também gostava de saber.
Alguém consegue esclarecer esta questão? O Raspberry tem o pivpn instalado, a porta 1154 foi aberta no router. Como é que se faz agora para que todos os pcs de casa ao aceder à net façam uso da VPN.
Opa adorei , foi bem explicativo, porem vc pode me ajudar com uma duvida??
se eu fizer esse VPN e conectar uma maquina do trabalho com o pc de casa eu conseguiria imprimir papelada de qualquer um dos locais??
Posso fazer com a Raspberry Pi 2 ou só com a 3?
Também dá com o Pi 2
Boa noite, na sequência da pergunta anterior, gostaria se também funciona com o model 1b do raspberry?
Na instalação está a aparecer o erro bash: line1: html: no such file or diretory.
Caso não funcione sabem alguma outra alternativa para meter o pi a servir de servidor VPN para utilizar um cliente sobre uma rede com proxy?
Cumprimentos,
Miguel
Vão lançar a parte 2 ?? Com router MEO não consigo conectar me, já abri portas mas pode ter algo a ver com o portforwarding apesar de ja ter seguido os tutoriais do site da meo inclusivé.
Está tudo feito. E agora como eu me LIGO com meu tablet Android?
Penso que preciso configurar o modem não é?
Bom dia.
Preciso da vossa ajuda.
Já fui contactado duas ou três vezes por email e agora por carta, pelas autoridades francesas.
Até agora tem sido que avisos.
Uso o uTorrent para “comprar” os episódios de algumas series.
Pelo que percebi o RPI VPN resolve-me o caso! É assim?
Agradeço a vossa melhor ajuda, pois não quero ser detectado ao fazer as ditas “compras”.
Muito obrigado pela vossa atenção.
Há países muito estritos, nem me refiro a esse tipo de”compras”, mesmo em coisas simples como ouvir uma música no YouTube de países diferentes… Eu por exemplo já estive em casa dum amigo na Alemanha, queria mostrar-lhe um cantor português e no YouTube dizia que na Alemanha não havia direitos para aceder a essa música… Enfim! Nesse caso o melhor que tens a fazer é meter uma VPN paga como CyberGhost por exemplo, compensa largamente (e não estou a falar dessa compras, mesmo com segurança a aceder a bancos, teus PC, etc).
Eu por exemplo sei que na França, Alemanha e UK eles andam a monitorizar tudo, mesmo coisas oficiais como os teus acessos ao banco, e eu isso não quero.
Ando a precisar de uma coisa destas para por configurar a um router que tenho no UK, por forma a conetar me la e ficar com um IP residencial. Isto porque ha sites que detetam que estou a usar VPN porque o IP é diferente de um IP residencial, uma vez que vem de um datacenter.
é este tipo de configuraçao e hardware que tenho de comprar ?
Esqueci me de referir que estou em portugual e quero ter um ip residencial do UK
Boa tarde. Os meus conhecimentos em Linux são muito básicos. Tenho um rpi configurado com o script pivpn como servidor, a funcionar. Precisava de configurar outro rpi como cliente deste servidor noutro local. Alguma ajuda? Desde já os meus agradecimentos
Olá Pedro! Parabéns por seu trabalho. Não sei trabalhar com nenhum tipo de sistema. Comprei um raspberry pi 3+ a pouco mais de um mes. Segui rigorosamente seu tutorial. Mas cometi uma falha… referente ao final do tutorial a parte do dominio… fiz opcao pelo dns publuco da google… depois veio a opcao do dominio e eu me perdi… existe uma maneira de corrigir esta parte? Muito obrigado. Marcelo-zSao Paulo/Brasil
agora como que fica a configurações dos clientes? existe algum painel para configurar Vlan junto a VPN? ou gerenciar usuarios?
onde esta o tuto para configurar um cliente?
como que fica a configurações dos clientes?