Diferenças entre edições de "OpenVPN"
Linha 10: | Linha 10: | ||
* lentidão a resolver nomes que não são da rede VPN. | * lentidão a resolver nomes que não são da rede VPN. | ||
− | Felizmente, existe uma solução que resolve ambas. O ideal, nesta situação, é desinstalar (ou pelo menos desactivar totalmente) o serviço systemd-resolved e instalar o serviço | + | Felizmente, existe uma solução que resolve ambas. O ideal, nesta situação, é desinstalar (ou pelo menos desactivar totalmente) o serviço systemd-resolved e instalar o serviço dnsmasq. Se tiver LXD instalado, o dnsmasq é instalado como dependência. |
− | Depois de instalado o serviço | + | Depois de instalado o serviço dnsmasq, activa-se com o comando abaixo: |
− | sudo systemctl enable | + | sudo systemctl enable dnsmasq |
Deve-se, depois, editar o ficheiro /etc/NetworkManager/NetworkManager.conf e, na secção [main], adiciona-se as seguintes linhas: | Deve-se, depois, editar o ficheiro /etc/NetworkManager/NetworkManager.conf e, na secção [main], adiciona-se as seguintes linhas: | ||
− | dns= | + | dns=dnsmasq |
rc-manager=unmanaged | rc-manager=unmanaged | ||
− | Por fim, para garantir que o | + | Por fim, para garantir que o dnsmasq é utilizado pelo sistema, edita-se o ficheiro /etc/resolv.conf para ter apenas o seguinte conteúdo: |
nameserver 127.0.0.1 | nameserver 127.0.0.1 | ||
+ | |||
+ | '''Nota:''' caso esteja a usar uma versão antiga do servidor OpenVPN, poderá ter que editar as configurações do servidor (presumindo que tenha essa possibilidade) para enviar os domínios que devem ser resolvidos através da VPN desta forma: | ||
+ | |||
+ | push "dhcp-option DNS IP.DO.Servidor.1"; | ||
+ | push "dhcp-option DNS IP.DO.Servidor.2"; | ||
+ | ... | ||
+ | push "dhcp-option DOMAIN domínio.1"; | ||
+ | push "dhcp-option DOMAIN domínio.2"; | ||
+ | push "dhcp-option DOMAIN domínio.3"; | ||
+ | ... |
Edição atual desde as 01h44min de 7 de novembro de 2022
...
Problemas
Dificuldade de resolução de nomes em clientes OpenVPN
Em sistemas com NetworkManager (e especialmente com systemd), há uma grande probabilidade de ocorrência de problemas de resolução de DNS:
- falhas ocasionais em resolver nomes da rede VPN (ou mesmo da rede local - neste caso é mesmo culpa do systemd-resolved);
- lentidão a resolver nomes que não são da rede VPN.
Felizmente, existe uma solução que resolve ambas. O ideal, nesta situação, é desinstalar (ou pelo menos desactivar totalmente) o serviço systemd-resolved e instalar o serviço dnsmasq. Se tiver LXD instalado, o dnsmasq é instalado como dependência.
Depois de instalado o serviço dnsmasq, activa-se com o comando abaixo:
sudo systemctl enable dnsmasq
Deve-se, depois, editar o ficheiro /etc/NetworkManager/NetworkManager.conf e, na secção [main], adiciona-se as seguintes linhas:
dns=dnsmasq rc-manager=unmanaged
Por fim, para garantir que o dnsmasq é utilizado pelo sistema, edita-se o ficheiro /etc/resolv.conf para ter apenas o seguinte conteúdo:
nameserver 127.0.0.1
Nota: caso esteja a usar uma versão antiga do servidor OpenVPN, poderá ter que editar as configurações do servidor (presumindo que tenha essa possibilidade) para enviar os domínios que devem ser resolvidos através da VPN desta forma:
push "dhcp-option DNS IP.DO.Servidor.1"; push "dhcp-option DNS IP.DO.Servidor.2"; ... push "dhcp-option DOMAIN domínio.1"; push "dhcp-option DOMAIN domínio.2"; push "dhcp-option DOMAIN domínio.3"; ...