Pplware

Transforme o seu Raspberry Pi num servidor de VPNs

….com OpenVPN

O Raspberry Pi é um dos mini PCs mais populares e potentes, que tem servido de base a muitos projectos interessantes (pode consultar os projectos na página do projecto aqui). Este mini equipamento, do tamanho de um cartão de crédito é capaz de reproduzir vídeo com qualidade Blu-ray e renderizar gráficos 3D, entre outras tarefas.

No seguimento da nossa parceria com a INMotion e depois de termos apresentado uma lista de componentes essenciais e também opcionais, de termos ensinado a instalar o RaspbianOS no mini PC e também de termos realizado as primeiras configurações e muito mais (ver artigos no final), hoje vamos aprender a transformar o Raspberry Pi num servidor de VPNs.

Para que serve uma VPN?

Antes de passarmos à configuração de um servidor de VPN no Windows, vamos explicar o conceito de VPN usando um exemplo. Vamos considerar uma empresa que revende vários tipos de chocolates e que tem “na rua” vários vendedores que tentam vender esse produtos às lojas.

Esses vendedores trazem normalmente consigo um smartphone/tablet ou um PC para registar/validar de imediato as encomendas no sistema de stocks/encomendas interno da empresa. No entanto, como o vendedor está “na rua”, ligado a uma rede pública (Internet), como fazer para se ligar em segurança (a partir do exterior) ao servidor interno da empresa onde está o sistema de stocks/encomendas? As VPNs (Virtual Private Network) são uma das soluções!

Uma rede privada virtual (VPN – Virtual Private Network ) é uma rede cifrada e privada criada em cima da Internet, de maneira a garantir privacidade na comunicação entre os vários computadores. Imagine que está ligado a uma rede pública, num dos locais referenciados aqui, e quer garantir que a sua ligação é segura. Para isso, pode fazer uso do seu Raspberry Pi que está em casa, e forçar que as ligações sejam cifradas, passando pelo seu mini PC.

Como instalar o OpenVPNno PI?

O OpenVPN é um software multi-plataforma que permite a criação de uma VPN entre várias máquinas com sistemas operativos diferentes. Para proceder à instalação e configuração do OpenVPN e OpenSSL (obrigadtório para a criação de certificados para o serviço), devem seguir os seguintes passos:

Passo 1) Instalar o openvpn e openssl

sudo apt-get install openvpn openssl

Passo 2) Após a instalação, é necessário gerar as chaves para o servidor e client. O openvpn traz já uma estrutura de exemplo, designada de easy-rsa-tool, na qual podemos-nos basear para configurar a nossa VPN. Para isso, vamos usar essa estrutura em /etc/openvpn, copiando-a de /usr/share/doc/openvpn/examples/easy-rsa

sudo cp -R /usr/share/doc/openvpn/examples/easy-rsa /etc/openvpn
cd /etc/openvpn/easy-rsa/2.0

Passo 3) A ferramenta easy-rsa-tool inclui um ficheiro chamado “vars” que podemos editar e mudar alguns parametros definidos por omissão. para carregar essa informação basta usar o comando

. ./vars

Nota: De referir que é necessário colocar um espaço entre os dois pontos.

Passo 4) Vamos agora gerar as chaves para o cliente e servidor, usadas para cifrar a comunicação. Para isso usamos os seguintes comandos ( o processo é idêntico ao já referido aqui):

./clean-all
./build-ca
./build-key-server server
./build-key client-name
./build-dh

Passo 4) Vamos agora copiar as chaves para dentro da estrutura do OpenVPN, usando os comandos

cd /etc/openvpn/easy-rsa/2.0/keys
cp ca.crt ca.key dh1024.pem server.crt server.key /etc/openvpn

Passo 5)  O ultimo passo consiste em configurar o servidor propriamente disto. Para isso, basta usar simplesmente os seguintes comandos que consiste em usar a configuração presente em server.conf.

cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn
gunzip /etc/openvpn/server.conf.gz

Passo 6) Vamos agora reiniciar o serviço openvpn

/etc/init.d/openvpn start

Se tudo correr bem, podemos ver se o tunel já está criado usando o comando

ifconfig tun0

Com as configurações anterior, criamos a parte do servidor. Num próximo tutorial iremos ensinar a configurar um cliente e também um router, de forma a podermos estabelecer ligação VPN a partir de qualquer lugar. Estejam atentos, será em breve.

Artigos sobre o Raspberry Pi
Exit mobile version