Este tutorial que escrevi o guiará. Isso deve ajudar a evitar erros comuns cometidos por pessoas que usam o VPS.
Primeiro, entre no seu painel VPS e ative TUN / TAP e PPP . Se você não tiver essa opção, entre em contato com o seu ISP para habilitá-lo.
Primeiro instale este pacote:
sudo apt-get install pptpd
Como não queremos que nossa VPN seja pública, vamos criar usuários.
Estou usando o VI, você pode usar o NANO ou qualquer editor de texto que desejar
vi /etc/ppp/chap-secrets
O formato é
[username] [service] [password] [ip]
Exemplo
john pptpd johnspassword *
*
significa que o acesso de todos os endereços IP é permitido, especifique o IP apenas se você tiver um estático.
Editando configurações de PPTPD
vi /etc/pptpd.conf
Procure as configurações localip e remota. Remova o #
(caractere de comentário) de ambos, para que essas configurações sejam realmente reconhecidas. Mude localip para o IP do seu servidor. Se você não souber o IP do servidor, poderá procurar no painel de controle do VPS.
A remota é basicamente o intervalo de IP que os clientes (computadores conectados à sua VPN) serão atribuídos. Por exemplo, se você deseja o seguinte intervalo de IPs: 192.168.120.231-235, seu servidor VPN poderá atribuir 192.168.120.232, 192.168.120.233, 192.168.120.234 e 192.168.120.235 aos clientes. Cabe a você o que você deseja usar para este campo.
Pessoalmente, escolho estas configurações:
localip 10.0.0.1
remoteip 10.0.0.100-200
Para que eu possa conectar cerca de 200 clientes.
Adicione servidores DNS ao /etc/ppp/pptpd-options
ms-dns 8.8.8.8
ms-dns 8.8.4.4
Você pode adicionar isso ao final do arquivo ou encontrar essas linhas, descomente-as e altere os IPs para o DNS público desejado.
Configurar encaminhamento
É importante habilitar o encaminhamento de IP no seu servidor PPTP. Isso permitirá que você encaminhe pacotes entre IP público e IP privado que você configura com o PPTP. Simplesmente edite o /etc/sysctl.conf e adicione a seguinte linha, se ela já não existir:
net.ipv4.ip_forward = 1
Para ativar as alterações, execute sysctl -p
Crie uma regra NAT para iptables
Esta é uma parte importante, se você estiver usando o VPS, provavelmente não usará o eth0, mas o venet0, verifique a interface que possui executando ifconfig
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE && iptables-save
Se você também deseja que seus clientes PPTP se comuniquem, adicione as seguintes regras do iptables:
iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE
iptables -I INPUT -s 10.0.0.0/8 -i ppp0 -j ACCEPT
iptables --append FORWARD --in-interface eth0 -j ACCEPT
Novamente, você precisa substituir eth0 por venet0 se estiver usando o VPS.
Eu recomendaria correr
sudo iptables-save
Agora, seu servidor PPTP também atua como um roteador.
Você pode executar este comando para que o serviço VPN seja iniciado na inicialização
systemctl enable pptpd
Eu recomendo instalar o iptables-persistent para que as regras permaneçam mesmo após a reinicialização
sudo apt-get install -y iptables-persistent