PiVPN: É fácil transformar o Raspberry Pi num servidor de VPNs

56 Comentários

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.

packrpi_01


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

pivpn_00

Passo 2) Início do Processo de Instalação

pivpn_01

 

Interface e endereço IP

Para que tudo funcione sempre bem, o RPI deve ter associado um endereço estático.

pivpn_02

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.

pivpn_03

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.

pivpn_04

 

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.

pivpn_05

No nosso caso, como apenas temos um utilizador criado no RPI, as configurações vão ser guardadas em /home/rpi/ovpn/

pivpn_06

 

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.

pivpn_07

Para activar as actualizações de segurança basta seleccionar Yes.

pivpn_08

 

Protocolo e porto do OpenVPN

Relativamente ao protocolo em uso, devem escolher UDP. Caso tenhamos necessidades de usar TCP, devemos fazer essa escolha.

pivpn_09

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.

pivpn_10

 

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).

pivpn_11

Recebemos em seguida a indicação que as chaves vão ser geradas.

pivpn_12

 

DNS

Relativamente ao DNS, podem usar o do vosso operador ou então escolher um serviço de DNS público.

pivpn_13

Para a nossa configuração vamos escolher o serviço de DNS da Google que é, provavelmente, o mais rápido.

pivpn_15

E está feita a instalação do OpenVPN. O próximo passo é criar utilizadores para acesso remoto.

pivpn_17

 

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.

pivpn_19

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.

Comentários

56

Deixe um comentário

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

  1. Avatar de José Moreira
    José Moreira

    em que SO foi esta instalação ?

  2. Avatar de João
    João

    Que diferença existe neste tutorial para o outro apresentado em Tutorial OpenVPN + OpenSSL no Raspberry PI??

    1. Avatar de Pedro Pinto

      Este é um script que facilita a instalação e posterior gestão das VPNs criadas.

      PP

  3. Avatar de newbie
    newbie

    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 ?

    1. Avatar de Pedro Pinto

      Essa já vem cifrada com o certificado SSL.

      1. Avatar de newbie
        newbie

        Então qual a vantagem do VPN face a uma qq ligação segura ?

        1. Avatar de Nuno
          Nuno

          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.

        2. Avatar de Ze
          Ze

          Do ponto da segurança praticamente nenhuma.

        3. Avatar de N'uno
          N’uno

          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.

        4. Avatar de nt
          nt

          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.

  4. Avatar de Jose
    Jose

    falta o exemplo de um cliente…

    1. Avatar de Pedro Pinto

      sim, no próximo tutorial

      1. Avatar de Belmiro
        Belmiro

        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?

      2. Avatar de Rui Cardoso
        Rui Cardoso

        Aonde está o próximo tutorial para ligar o servidor ? da parte do cliente .

        Daria para ligar um smartTV o servidor ?

  5. Avatar de Nao sei
    Nao sei

    Como se acede á consola no pipplware?

  6. Avatar de Sergio
    Sergio

    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

    1. Avatar de kekes
      kekes

      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).

    2. Avatar de Gonçalo
      Gonçalo

      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. …

      1. Avatar de João Reis
        João Reis

        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

  7. Avatar de kekes
    kekes

    Bom script, não conhecia! Que venha a segunda parte!

  8. Avatar de transcendez
    transcendez

    como posso comprar o dito? não vejo.

  9. Avatar de ruca
    ruca

    Uma pergunta talvez parva, mas não é um dos pontos de segurança de uma vpn estar deslocalizada fisicamente?

    1. Avatar de Gerardo
      Gerardo

      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)

  10. Avatar de Luís
    Luís

    o PI lida bem com todo o processamento necessário em site2site?

  11. Avatar de Ze
    Ze

    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.

  12. Avatar de Nuno
    Nuno

    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?

  13. Avatar de joaofra
    joaofra

    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

  14. Avatar de Bruno
    Bruno

    Bom artigo,
    Para quando a segunda parte?

  15. Avatar de PFM
    PFM

    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.

    1. Avatar de PFM
      PFM

      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?

      1. Avatar de Bruno
        Bruno

        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.

  16. Avatar de metro
    metro

    quando escrevo pivpn add ele diz-me que o comando não existe …
    Ajuda?!

    1. Avatar de metro
      metro

      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!

  17. Avatar de Tiago
    Tiago

    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.

  18. Avatar de Marcio
    Marcio

    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

  19. Avatar de Odail
    Odail

    Para no meu PC fazer uso da VPN, basta configurar o Gateway do PC para o numero de IP do Raspberry Pi?

    1. Avatar de Luis
      Luis

      Também gostava de saber.

      1. Avatar de Luís
        Luís

        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.

  20. Avatar de Guilherme
    Guilherme

    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??

  21. Avatar de Helton Cavalcanti
    Helton Cavalcanti

    Posso fazer com a Raspberry Pi 2 ou só com a 3?

  22. Avatar de MiguelC
    MiguelC

    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

  23. Avatar de Miguel Fonseca da Silva
    Miguel Fonseca da Silva

    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é.

  24. Avatar de Luis Leal
    Luis Leal

    Está tudo feito. E agora como eu me LIGO com meu tablet Android?
    Penso que preciso configurar o modem não é?

  25. Avatar de Jose Costa
    Jose Costa

    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.

    1. Avatar de Belmiro
      Belmiro

      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.

  26. Avatar de joao
    joao

    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 ?

    1. Avatar de joao
      joao

      Esqueci me de referir que estou em portugual e quero ter um ip residencial do UK

  27. Avatar de Fernando Santos
    Fernando Santos

    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

  28. Avatar de Marcelo
    Marcelo

    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

  29. Avatar de Hugo Lima
    Hugo Lima

    agora como que fica a configurações dos clientes? existe algum painel para configurar Vlan junto a VPN? ou gerenciar usuarios?

  30. Avatar de rudolfo
    rudolfo

    onde esta o tuto para configurar um cliente?

  31. Avatar de Rudolfo
    Rudolfo

    como que fica a configurações dos clientes?