Acesso ao Formulário de Login
A conexão de um PPTP client nos servidores do Sistema é muito util para diagnóstico de problemas com rotas ou firewalls em cima do IP, normalmente usamos esse recurso quando há algum problema ao gerar notas fiscais, onde o servidor do Sistema comunica direto com servidores da receita, ou para testar comunicação com APIs de pagamento.
AVISO
Este documento não tem relação com o Sistema. É um documento de instrução sobre o erro.
ALERTA
A configuração pode ser realizada pelo time de integração de redes do Sistema ou pelo próprio cliente. Caso seja feita de forma independente, o Sistema não se responsabiliza por eventuais problemas, e possíveis correções poderão ser cobradas.
Passo-a-passo
Pré-Requisitos
- Instalar e configurar o pptpd(Que veremos em seguida)
- Configurar uma interface do tipo “PPTP Client” no roteador de borda do provedor
Nessa documentação usaremos VPN do tipo PPTP, e para isso é necessário que ambas as partes da VPN tenham acesso as portas:
- 1723 (TCP)
- 48 (GRE)
- Primeiramente, dentro do servidor do Sistema, instalaremos o serviço com o comando:
apt install pptpd
- Logo após a instalação do serviço, já podemos habilitá-lo para iniciar junto com o servidor. Dessa forma, caso o IXC seja reiniciado, o PPTPD será iniciado automaticamente.
systemctl enable pptpd.service
- Após isso iremos precisar alterar três aquivos dentro do servidor. Para editar no Sistema, você deve acessar o modo de edição do arquivo:
/etc/pptpd.conf
No arquivo “/etc/pptpd.conf” é onde definimos qual será a rede virtual que usaremos para comunicação através do túnel, para isso precisamos apenas de:
- IP local: IP pelo qual o servidor do IXC irá responder no tunel;
- Rede remota: IPs que serão entregues aos equipamentos que conectarem a essa VPN.
A configuração deve ser feita inserindo os parâmetros ao final do arquivo, seguindo a seguinte sintaxe:
localip 192.168.199.1
remoteip 192.168.199.2-254
OBS: Os IPs anunciados aqui não podem estar em uso na rede interna do provedor, dê preferência por uma rede incomum(No exemplo usei a rede: 192.168.199.0/24) e sempre confirme com o cliente se pode usa-la.
/etc/ppp/chap-secrets
No arquivo “/etc/ppp/chap-secrets” é onde definimos quais serão as credências para autenticação na VPN. Conforme já descrito no arquivo, precisamos apenas definir os seguintes parâmetros:
- client: usuário/login para autenticação;
- server: serviço usado na configuração do servidor PPTP;
- secret: senha para autenticação do usuário/login;
- IP addresses: IP que será entregue para o usuário/login(cada credencial deve ter seu próprio IP).
/etc/ppp/ip-up
No arquivo “/etc/ppp/ip-up” é onde definimos as rotas específicas que o servidor deverá na VPN. Devem ser configuradas rotas para equipamentos/ativos da rede do provedor e para rede entregue aos clientes finais(necessário para função de diagnóstico do sistema), para isso adicione ao final do arquivo seguindo a seguinte sintaxe:
sbin/route add -net 192.168.0.0/24 gw 192.168.199.2 (Exemplo de faixa privada) $ /sbin/route add -net 100.64.0.0/10 gw 192.168.199.2 (Abranje a rede de CGNAT, para ter rotas até as CPES)
case “$5” in 192.168.199.2)
/sbin/route add -net 192.168.0.0/24 gw 192.168.199.2
/sbin/route add -net 100.64.0.0/10 gw 192.168.199.2 ;; *) esac
OBS: As rotas devem ser específicas e únicas, evite usar redes muito grandes como destinos(como um /8 por exemplo) e preste atenção para não subir a mesma rota mais de uma vez(use calculadora de IPs para garantir que não está invadindo os limites das redes).
Com toda configuração feita, reinicie o serviço para aplica-la:
systemctl restart pptpd.service
Configuração do PPTP client
E, para fechar o túnel de comunicação privada, será necessário configurar o lado cliente no equipamento ou ativo na rede do cliente (geralmente o equipamento de borda). Lembre-se de que estamos utilizando o protocolo PPTP, e ambos os lados precisam ter acesso às portas 1723 (TCP) e 47 (GRE).
Por ser um cenário mais comum, utilizaremos um equipamento Mikrotik como exemplo. O primeiro passo é configurar um perfil PPP exclusivo para o uso da VPN no equipamento:
- Acesse o menu PPP.
- Vá até a aba Profiles.
- Clique no símbolo de + e replique as seguintes configurações:
- Em General adicione o nome do profile da VPN. Exemplo: pptpd_ixcsoft
- Na opção Change TCP MSS marque como Default
- Na opção Use UPnP deixe marcado como Yes
- Na aba Protocols selecione:
- “Use IPv6” como “No”
- “Use MPLS” como “Default”
- “Use Compression” como “Default”
- “Use Encryption” como “yes”
- Em seguida, adicione uma interface do tipo PPTP Client e configure as credenciais previamente criadas no servidor.
- Acesse o menu Interfaces.
- Clique no símbolo + e selecione PPTP Client
- Aplique as informações nas seguintes abas:
- General
- Name: Coloque o nome da VPN
- Dial Out
- Connect to: Coloque o IP público que de comunicação com o servidor
- User/ Password: Coloque os dados de comunicação da VPN criada no servidor
- Profile: Selecione o profile criado para a VPN.
- General
Com isso, a conexão deverá estar estabelecida. Agora, você pode verificar as rotas no Debian e proceder com as integrações necessárias.
ATENÇÃO:
A partir desse momento os equipamentos/ativos na rede do provedor devem encaminhar requisições para o localip configurado no arquivo /etc/ppptp.conf, assim como ele também deve estar liberado para acesso aos equipamentos/ativos, pois o IXC passará a requisitarar com ele(Lembre de ajustar em Provedor > Configurações > Configuração padrão > aba Servidor local).
Considerações Importantes
Criar e gerenciar uma VPN PPTPD no servidor do Sistema é uma excelente maneira de assegurar o acesso remoto e proteger a comunicação de dados. Certifique-se de testar regularmente a conexão e atualizar as configurações de segurança conforme necessário para manter a integridade da rede.
Etiquetas
PPTP Concentrador RedeAdicional