Tente com isso
O que se segue são as instruções mínimas absolutas que você precisa para obter um servidor VPN PPTP básico em execução no Ubuntu. Os clientes poderão então entrar em VPN no servidor e rotear seu tráfego de internet para que ele passe pelo servidor para a Internet.
Primeiro, instale o software necessário:
sudo apt-get install pptpd
Em segundo lugar, ative ip_forward
no kernel para IPv4
removendo o comentário da linha associada em /etc/sysctl.conf
:
sudo sed -i -r 's/^\s*#(net\.ipv4\.ip_forward=1.*)//' /etc/sysctl.conf
Recarregue o arquivo de configuração para que a alteração tenha efeito imediatamente.
sudo -i sysctl -p
Em terceiro lugar, ative o NAT
(se já não estiver ativado) para que os usuários na rede VPN privada possam ter seus pacotes roteados para a Internet:
OUTIF='/sbin/ip route show to exact 0/0 | sed -r 's/.*dev\s+(\S+).*//''
sudo -i iptables --table nat --append POSTROUTING --out-interface $OUTIF --jump MASQUERADE
Habilite o NAT na inicialização do script rc.local.
CMD="iptables --table nat --append POSTROUTING --out-interface $OUTIF --jump MASQUERADE"
sudo sed -i "\$i$CMD\n" /etc/rc.local
Nota: Este guia assume que você não possui firewall configurado no servidor. Se você tiver um firewall no servidor, como UFW
Quarto, para cada usuário VPN
, crie uma conta no arquivo /etc/ppp/chap-secrets
.
Substitua $USER
pelo nome de usuário real que você deseja usar para esse usuário VPN.
KEY='head -c 20 /dev/urandom | sha1sum | nawk '{print $1}''
echo "$USER pptpd $KEY *" | sudo tee -a /etc/ppp/chap-secrets