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.
Hoje vamos ensinar a instalar e configurar um servidor VPN PPTP no Raspberry Pi.
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.
Protocolo de Túnel Ponto a Ponto (PPTP)
O PPTP – Point-to-Point Tunneling Protocol permite a transferência segura de informação a partir de um computador remoto para um servidor, através da criação de uma VPN. O PPTP encapsula o protocolo IP ou o protocolo de troca de pacotes inter-redes (IPX, Internetwork Packet eXchange) em datagramas PPP. O servidor de túnel executa todas as verificações e validações de segurança e activa a encriptação de dados, o que tornará mais seguro o envio de informações através de redes não protegidas. Também pode utilizar o PPTP em redes privadas LAN a LAN.
Como transformar o PI num servidor VPN PPTP?
Para transformarem o vosso Raspberry PI num servidor VPN PPTP devem seguir os seguintes passos:
1) Instalação do PPTP
Para instalar o servidor PPTP, deve executar o seguinte comando:
sudo apt-get install pptpd
2) Configurar o PPTP
O primeiro passo a ser executado na configuração do PPTP no raspberry pi, é atribuir o endereço IP local e remotos do nosso servidor VPN. Essa configuração é feita no ficheiro /etc/pptpd.conf
Ao abrirmos o ficheiro de configuração, basta indicar a seguinte informação:
- localip – endereço do Raspberry PI
- remoteip – endereços a atribuir a clientes
# 1. No spaces are permitted between commas or within addresses.
#
# 2. If you give more IP addresses than MAX_CONNECTIONS, it will
# start at the beginning of the list and go until it gets
# MAX_CONNECTIONS IPs. Others will be ignored.
#
# 3. No shortcuts in ranges! ie. 234-8 does not mean 234 to 238,
# you must type 234-238 if you mean this.
#
# 4. If you give a single localIP, that’s ok – all local IPs will
# be set to the given one. You MUST still give at least one remote
# IP for each simultaneous client.
#
# (Recommended)
localip 192.168.1.10
remoteip 192.168.0.234-238,192.168.0.245
# or
#localip 192.168.0.234-238,192.168.0.245
Em seguida abrimo o ficheiro /etc/ppp/pptpd-options e na parte final colocamos os seguintes parametros:
ms-dns 192.168.1.254
nobsdcomp
noipx
mtu 1490
mru 1490
…onde a directiva ms-dns corresponde ao endereço IP do DNS local.
Em seguida, criamos os utilizadores com autorização para estabelecer sessões VPN. Essa confiruação é realizada em /etc/ppp/chap-secrets
Para uma autenticação básica no nosso raspberry pi deveremos só preencher os campos “client” e “secret” colocando os restantes com um sinal ”*” que indica que os campos se encontram vazios.
# Secrets for authentication using CHAP
# client server secret IP addresses
pplware * 123qwe *
Caso pretenda ter encaminhamento na rede (acedendo remotamente), basta abrir o ficheiro /etc/sysctl.conf e tirar o comentário do paramento
net.ipv4.ip_forward=1
Após realizada a confiuração anterior, basta executar o seguinte comando:
sudo sysctl -p
Por fim basta fazer um reset ao nosso serviço PPTP, para tal executamos o seguinte comando:
/etc/init.d/pptpd restart
Concluídos estas etapas, temos o nosso servidor VPN PPTP no raspberry pi a funcionar, dando assim a possibilidade de uma rede distinta da nossa podermos aceder a nossa rede domestica através de uma VPN. Para que o tutorial fique completo, vamos ensinar nos próximos tutoriais como aceder da Internet ao seu raspberry, através do serviço no-ip, e como redireccionamos os pedidos de estabelecimento de VPN, no router, para o PI.