Como configurar a NordVPN manualmente em um roteador OpenWRT

O NordVPN é compatível com o OpenWrt?

Relatórios indicam que roteadores com firmware OpenWrt aceitam VPNs como a NordVPN. Porém, lembre-se de que a equipe da NordVPN não testou a configuração a seguir. Ela foi compartilhada e testada por nossos maravilhosos clientes. Em particular, a NordVPN gostaria de agradecer ao Unwind, um membro ativo da comunidade do OpenWrt, pela assistência contínua ao nos fornecer instruções atualizadas do OpenWrt. Se quiser configurar a NordVPN usando o nordvpnlite, confira nosso guia.

Instruções da GUI

Este guia mostra como configurar uma conexão da NordVPN em roteadores usando o firmware OpenWrt pela interface Web LuCI. 

  1. Para acessar a interface LuCI do roteador OpenWrt, insira o endereço de IP local no navegador de Internet e inicie a sessão. O endereço de IP padrão é 192.168.1.1 e o nome de usuário é root.

    Página de login da interface web LuCI do OpenWrt com nome de usuário 'root' e campo de senha

    OBSERVAÇÃO: o sistema não define uma senha por padrão, então esse espaço pode ficar em branco. Porém, ao iniciar a sessão, o sistema exibirá uma mensagem pedindo que você defina uma senha.

    Interface LuCI do OpenWrt mostrando um banner de aviso amarelo 'No password set!' após o login

    Para fazer isso, clique em Sistema > Administração. Lá, você poderá definir uma senha.
     
  2. Ao iniciar a sessão, selecione a aba Sistema e escolha Software.

    Menu suspenso System do LuCI do OpenWrt com a opção 'Software' destacada
     
  3. Clique no botão Atualizar listas, aguarde até o processo ser concluído e clique em Ignorar.
     
  4. Para instalar os pacotes a seguir, digite os nomes deles no campo Filtro e clique em Instalar…
     
    1. openvpn-openssl
    2. ip-full
    3. luci-app-openvpn

      Página Software do OpenWrt com 'luci-app-openvpn' inserido no campo de filtro e o botão Install destacado
       
  5. Clique em Salvar e aplicar e atualize a página do roteador. Você deverá ver uma nova aba chamada VPN. Clique nela e escolha OpenVPN no menu suspenso.
     
  6. Agora será necessário baixar os arquivos de configuração do cliente OpenVPN. Depois, conecte-se a um servidor recomendado pela sua Nord-Account.

    Siga os passos abaixo para encontrar as credenciais do serviço para a configuração da conexão manual:
    1.  
      1. Entre na sua Nord-Account, clique em NordVPN e, em Configuração manual, clique em Credenciais do serviço. Você verá seu nome de usuário e sua senha, que serão necessários para se conectar manualmente.

        Página de Configuração do Nord Account mostrando a aba 'Service credentials' destacada com os campos Username e Password
         
      2. Agora será necessário baixar os arquivos de configuração do cliente OpenVPN.

        Para encontrar o melhor servidor para sua conexão, siga os passos abaixo:
        1. Entre na sua Nord-Account e clique em NordVPN.

          Painel do NordVPN do Nord Account Services com NordVPN destacado na barra lateral esquerda
           
        2. Role para baixo até Configurações avançadas e clique em Configurar NordVPN manualmente.

          Seção de Configurações avançadas do Nord Account com o link 'Set up NordVPN manually' destacado
           
        3. Clique na aba Recomendação de servidor. Nosso algoritmo recomendará o melhor servidor para você de acordo com a sua localização.

          Página de Configuração do Nord Account com a aba 'Server recommendation' destacada
           
        4. Ao pressionar Filtros avançados, você pode personalizar ainda mais os servidores recomendados selecionando o Tipo de servidor e o Protocolo de segurança.

          Aba de recomendação de servidor da Configuração do Nord Account com o link 'Advanced filters' destacado

          Configuração do Nord Account mostrando os filtros avançados expandidos com os menus suspensos Server type e Security protocol

          Caso queira selecionar um servidor específico, siga estes passos:
          1. Em Configurar NordVPN manualmente, selecione Arquivos de configuração do OpenVPN.

            Página de Configuração do Nord Account com a aba 'OpenVPN configuration files' destacada
             
          2. Use a barra de Pesquisa ou role para baixo para encontrar o servidor desejado para se conectar. Depois, clique em Baixar UDP ou Baixar TCP para baixá-lo.

            Aba de arquivos de configuração OpenVPN do Nord Account mostrando a lista de servidores com os botões 'Download UDP' e 'Download TCP' destacados

            Neste guia, usaremos o servidor us5104.nordvpn.com.
  7. Na seção Carregar arquivo de configuração OVPN, nomeie a conexão de VPN no campo Nome de instância (nós a nomeamos "nordvpn_us"). Depois, clique no botão Escolher arquivo, localize o arquivo que você baixou do servidor e clique em carregar.

    Seção de upload de arquivo de configuração OVPN do OpenWrt com o nome de instância 'nordvpn_us', Choose File e o botão Upload destacado
     
  8. Na seção Instâncias do OpenVPN, clique no botão Editar ao lado da nova instância criada.

    Lista de instâncias OpenVPN do OpenWrt mostrando a entrada nordvpn_us com o botão Edit destacado
     
  9. Digite suas credenciais do serviço da NordVPN, nome de usuário e senha no campo inferior em linhas separadas.

    nome de usuário
    senha

    Seção de arquivo de credenciais OpenVPN do OpenWrt mostrando o nome de usuário e a senha do NordVPN inseridos em linhas separadas

    Encontre suas credenciais do serviço da NordVPN (nome de usuário e senha) no painel da Nord-Account.

     

  10. Agora, copie o caminho para o arquivo de credenciais indicado exatamente acima do campo com as credenciais e cole-o ao lado da linha "auth-user-pass" na seção arquivo de configuração acima.

    Deve ficar assim: auth-user-pass /etc/openvpn/nordvpn_us.auth

    Editor de arquivo de configuração OpenVPN do OpenWrt com a linha 'auth-user-pass /etc/openvpn/nordvpn_us.auth' destacada na configuração
     
  11. Para se conectar ao servidor de VPN, clique na caixa de seleção Ativado e depois no botão Iniciar ao lado na instância criada da NordVPN.

    Lista de instâncias OpenVPN do OpenWrt com nordvpn_us mostrando a caixa de seleção Enabled marcada e o botão de iniciar destacado
     
  12. Na parte inferior, clique no botão Salvar e aplicar.
     
  13. Na parte superior do menu de navegação, passe o mouse sobre Sistema e clique em Reiniciar. Outra página será aberta. Clique no botão Executar reinicialização. Em seguida, você terá que entrar novamente.
     
  14. Passe o mouse sobre a aba Rede no topo da página e escolha Interfaces:
     
    1. Clique em Adicionar nova interface.
    2. Na seção nome , digite nordvpntun.
    3. Clique em protocolo e escolha não controlado.
    4. No menu suspenso interface, digite o nome tun0 no campo inferior -- custom -- e pressione a tecla Enter.

    Caixa de diálogo Add new interface do OpenWrt com o nome 'nordvpntun', protocolo 'Unmanaged', interface 'tun0' e o botão Create interface destacado
     
  15. Clique em Criar interface e salve.
     
  16. Escolha a aba Rede no topo e acesse a seção Firewall.
     
  17. Clique no botão Adicionar e ajuste de acordo com as informações a seguir:
     
    1. Nomeie como "vpnfirewall".
    2. Defina a opção "Entrada" como "Rejeitar".
    3. Deixe "Saída" como "Aceitar" e "Encaminhar" como "Rejeitar".
    4. Marque a opção "Disfarçar".
    5. Marque a opção "MSS clamping".
    6. No menu suspenso em "Redes cobertas", escolha "nordvpntun".
    7. No menu suspenso em "Permitir encaminhar de zonas de origem", escolha "LAN".
    8. Clique no botão "Salvar".

      Formulário de configurações da zona Firewall do OpenWrt com o nome 'vpnfirewall', input e forward definidos como reject, mascaramento ativado, cobrindo nordvpntun
       
  18. Na seção Zonas, encontre a zona chamada lan e clique no botão Editar.

    Tabela de zonas do firewall do OpenWrt com a linha da zona 'lan' destacada e o botão Edit selecionado
     
  19. No menu suspenso Permitir encaminhar para zonas de destino, marque a opção NordVPN.

    Configurações da zona Firewall para 'lan' do OpenWrt com as entradas vpnfirewall e nordvpntun destacadas em 'Allow forward to destination zones'
     
  20. No topo da página, clique novamente em Rede e escolha DHCP e DNS na lista suspensa.
     
  21. Encontre a opção de encaminhamento de DNS na aba Configurações gerais e insira endereços de DNS da NordVPN. Os endereços são: 103.86.96.100 e 103.86.99.100.

    Configurações do servidor DHCP e DNS do OpenWrt com os encaminhamentos DNS mostrando os endereços DNS do NordVPN 103.86.96.100 e 103.86.99.100 destacados
     
  22. Acesse a aba Arquivos hosts e resolve, marque a opção Ignorar arquivo resolve e clique no botão Salvar e aplicar.

    Aba 'Resolv and Hosts Files' de DHCP e DNS do OpenWrt com a caixa de seleção 'Ignore resolve file' marcada e o botão Save & Apply destacado
     
  23. Volte para a aba VPN > OpenVPN.
     
  24. Na seção Instâncias do OpenVPN, marque a opção Ativar ao lado da opção da NordVPN na lista e clique no botão Salvar e aplicar.

    Página de instâncias OpenVPN do OpenWrt mostrando nordvpn_us com a caixa de seleção Enabled marcada e o botão Save & Apply destacado
     
  25. Clique no botão Iniciar mais uma vez para se conectar ao servidor de VPN.

Instruções do CLI

Caso queira um tutorial mais avançado, siga este guia. É necessário ter um roteador com firmware OpenWrt e um cliente OpenVPN ativado para aproveitar os benefícios da VPN no OpenWrt. A página principal do firmware é https://openwrt.org/

  1. Primeiro, é necessário acessar seu roteador usando SSH com seu próprio endereço de IP na LAN. Por padrão, o endereço de IP é 192.168.1.1 e o nome de usuário é root. Porém, se os valores padrão forem alterados, os endereços de IP podem ser diferentes.
     
  2. Por padrão, o roteador não tem o pacote OpenVPN na imagem do firmware. Para instalá-lo, execute os comandos a seguir:

    opkg update
    			opkg install openvpn-openssl
    			opkg install ip-full

    Além disso, você pode instalar o componente LuCI da configuração do OpenVPN, mas isso é opcional. Faça isso executando este comando:

    opkg install luci-app-openvpn
  3. Após instalar o pacote do OpenVPN, você pode fazê-lo abrir automaticamente sempre que o roteador iniciar ao executar este comando:

    /etc/init.d/openvpn enable
  4. Agora será necessário baixar os arquivos de configuração do servidor. Para fazer isso, siga estes passos:
    1. Entre na sua Nord-Account e clique em NordVPN.

      Painel do NordVPN do Nord Account Services com NordVPN destacado na barra lateral esquerda
       
    2. Role para baixo até Configurações avançadas e clique em Configurar NordVPN manualmente.

      Seção de Configurações avançadas do Nord Account com o link 'Set up NordVPN manually' destacado
       
    3. Clique na aba Recomendação de servidor. Nosso algoritmo recomendará o melhor servidor para você de acordo com a sua localização.

      Página de Configuração do Nord Account com a aba 'Server recommendation' destacada
       
    4. Ao pressionar Filtros avançados, você pode personalizar ainda mais os servidores recomendados selecionando o Tipo de servidor e o Protocolo de segurança.

      Aba de recomendação de servidor da Configuração do Nord Account com o link 'Advanced filters' destacado

      Configuração do Nord Account mostrando os filtros avançados expandidos com os menus suspensos Server type e Security protocol

      Caso queira selecionar um servidor específico, siga estes passos:
      1. Em Configurar NordVPN manualmente, selecione Arquivos de configuração do OpenVPN.

        Página de Configuração do Nord Account com a aba 'OpenVPN configuration files' destacada
         
      2. Use a barra de Pesquisa ou role para baixo para encontrar o servidor desejado para se conectar. Depois, clique em Baixar UDP ou Baixar TCP para baixá-lo.

        Aba de arquivos de configuração OpenVPN do Nord Account mostrando a lista de servidores com os botões 'Download UDP' e 'Download TCP' destacados
         
  1. Para este guia, usamos o servidor uk2054.nordvpn.com, mas você deve usar o servidor sugerido pelo site.

    Para baixar um arquivo de servidor, selecione o país ao qual deseja se conectar, clique em "Mostrar protocolos disponíveis", clique com o botão direito em "Baixar configuração" para "OpenVPN TCP" ou "OpenVPN UDP" e escolha "Copiar endereço do link".

    Depois, volte à sessão SSH e execute o comando a seguir:

    wget -P /etc/openvpn https://downloads.nordcdn.com/configs/files/ovpn_udp/servers/uk2054.nordvpn.com.udp.ovpn


    No entanto, use o link copiado para o arquivo de servidor específico. Esse comando baixará o arquivo de configuração no diretório /etc/openvpn para acesso fácil.

    A outra opção é baixar o arquivo de configuração do servidor em uma máquina diferente e transferi-lo para o roteador OpenWrt usando métodos alternativos, como os protocolos SCP ou SFTP.

    Para compilações OpenWrt mais antigas:
    Basta baixar um arquivo aqui: https://downloads.nordcdn.com/configs/archives/certificates/servers.zip. No arquivo baixado, você encontrará os arquivos correspondentes com as extensões .crt e .key. Os arquivos são específicos de cada servidor de VPN.
     

  2. A configuração do OpenVPN para a NordVPN exige que você insira suas credenciais do serviço da NordVPN, nome de usuário e senha toda vez que o OpenVPN iniciar. Porém, faremos alguns ajustes para que as credenciais sejam fornecidas automaticamente.

    Primeiro, para facilitar o processo, instalaremos o editor de texto nano executando o comando a seguir:

    opkg install nano

    Ou você pode usar o editor de texto vi integrado. Para mais informações sobre editores de texto, consulte este artigo.

    Agora, abra o arquivo de configuração do servidor baixado usando o editor de texto nano. Em nosso caso, o comando seria:

    nano /etc/openvpn/uk2054.nordvpn.com.udp.ovpn

    Depois, acrescente a palavra "secret" (sem as aspas) à sequência "auth-user-pass". A linha resultante deve ser:

    auth-user-pass secret

    É necessário criar um novo arquivo secret para armazenar as credenciais do serviço da NordVPN. Para fazer isso, execute o comando a seguir:

    nano /etc/openvpn/secret

    Isso vai criar e abrir um novo arquivo usando o editor de texto nano.

    Na primeira linha do arquivo, insira seu nome de usuário do serviço da NordVPN, e na segunda, a senha do serviço da NordVPN.

    Encontre suas credenciais do serviço da NordVPN (nome de usuário e senha) no painel da Nord-Account.

  3. Configure o OpenVPN usando o arquivo de configuração baixado em uma destas duas formas:
     
    1. Altere a extensão do arquivo de .ovpn para .conf, o que permite que o OpenVPN o encontre automaticamente pela extensão.

      Para fazer isso, use o comando mv:

      mv /etc/openvpn/uk2054.nordvpn.com.udp.ovpn /etc/openvpn/uk2054.nordvpn.com.udp.conf

       

    2. Especifique o nome do arquivo em "/etc/config/openvpn" usando os comandos "uci":

      uci set openvpn.nordvpn=openvpn
      			uci set openvpn.nordvpn.enabled='1'
      			uci set openvpn.nordvpn.config='/etc/openvpn/uk2054.nordvpn.com.udp.ovpn'
      			uci commit openvpn

      Em seguida, o arquivo "/etc/config/openvpn" deve conter as sequências acrescentadas a seguir:

      config openvpn 'nordvpn'
      			option enabled '1'
      			option config '/etc/openvpn/uk2054.nordvpn.com.udp.ovpn'

      É possível verificar executando este comando:

      tail /etc/config/openvpn

      Você também pode alterar a extensão do arquivo de .ovpn para .conf e especificá-lo no arquivo "/etc/config/openvpn". Nesse caso, porém, o OpenVPN iniciará esse arquivo de configuração apenas uma vez.
       

  4. Crie uma nova interface de rede executando os comandos a seguir:

    uci set network.nordvpntun=interface
    			uci set network.nordvpntun.proto='none'
    			uci set network.nordvpntun.ifname='tun0'
    			uci commit network

    Agora, o arquivo "/etc/config/network" conterá apenas as sequências acrescentadas a seguir:

    config interface 'nordvpntun'
    			option proto 'none'
    			option ifname 'tun0'

    É possível verificar executando este comando:

     tail /etc/config/network 
  5. Crie uma nova zona de firewall e adicione uma regra de encaminhamento de LAN para VPN executando os comandos a seguir:

    uci add firewall zone
    			uci set firewall.@zone[-1].name='vpnfirewall'
    			uci set firewall.@zone[-1].input='REJECT'
    			uci set firewall.@zone[-1].output='ACCEPT'
    			uci set firewall.@zone[-1].forward='REJECT'
    			uci set firewall.@zone[-1].masq='1'
    			uci set firewall.@zone[-1].mtu_fix='1'
    			uci add_list firewall.@zone[-1].network='nordvpntun'
    			uci add firewall forwarding
    			uci set firewall.@forwarding[-1].src='lan'
    			uci set firewall.@forwarding[-1].dest='vpnfirewall'
    			uci commit firewall

    Se feito corretamente, o arquivo "/etc/config/firewall" deve conter as sequências acrescentadas a seguir:

    config zone
    			option name 'vpnfirewall'
    			option input 'REJECT'
    			option output 'ACCEPT'
    			option forward 'REJECT'
    			option masq '1'
    			option mtu_fix '1'
    			list network 'nordvpntun'
    			config forwarding
    			option src 'lan'
    			option dest 'vpnfirewall'

    É possível verificar executando este comando:

    tail -13 /etc/config/firewall

    Isso exibirá as últimas 13 linhas que contêm as sequências acima.

  6. Agora é necessário configurar os servidores de DNS. A abordagem mais simples é usar o DNS da NordVPN na interface WAN do roteador. Para adicionar o DNS da NordVPN, execute os comandos a seguir:

    uci set network.wan.peerdns='0'
    			uci del network.wan.dns
    			uci add_list network.wan.dns='103.86.96.100'
    			uci add_list network.wan.dns='103.86.99.100'
    			uci commit


    OBSERVAÇÃO: se você receber a mensagem de erro "uci: Entry not found" após executar o comando uci del network.wan.dns, você pode ignorá-la.

    O arquivo "/etc/config/network" deve conter a seção ''wan'' com as três strings inferiores anexadas:

    config interface 'wan'
    			<...>
    			option peerdns '0'
    			list dns '103.86.96.100'
    			list dns '103.86.99.100'


    Para verificar, execute o comando e encontre a interface "wan" na saída:

    cat /etc/config/network 

    Você também pode adicionar endereços de DNS diferentes, como o do Google, ao executar estes comandos:

    uci set network.wan.peerdns='0'
    			uci del network.wan.dns
    			uci add_list network.wan.dns='8.8.8.8'
    			uci add_list network.wan.dns='8.8.4.4'
    			uci commit

    As strings anexadas devem ser semelhantes às anteriores.
     

Kill Switch (opcional) para OpenWrt 22.02 ou compilações mais antigas (iptables)

Para evitar vazamento de tráfego em caso de desconexão do túnel da VPN, siga estas etapas:

  1. Abra o arquivo do firewall usando um editor de texto:

    sudo nano /etc/firewall.user
  2. Adicione o conteúdo a seguir:

    # This file is interpreted as a shell script.
    			# Put your custom iptables rules here, and they will be executed with each firewall (re-)start
    			# Internal uci firewall chains are flushed and recreated on reload, so
    			# put custom rules into the root chains, e.g. INPUT or FORWARD, or into the
    			# special user chains, e.g. input_wan_rule or postrouting_lan_rule.
    
    			if (! ip a s tun0 up) && (! iptables -C forwarding_rule -j REJECT); then
    
    			iptables -I forwarding_rule -j REJECT
    
    			fi
  3. Crie um arquivo chamado "99-prevent-leak" na pasta "/etc/hotplug.d/iface" executando este comando:

    nano /etc/hotplug.d/iface/99-prevent-leak
  4. Adicione o conteúdo a seguir ao script:  
     

    #!/bin/sh
    
    			if [ "$ACTION" = ifup ] && (ip a s tun0 up) && (iptables -C forwarding_rule -j REJECT); then
    
    			iptables -D forwarding_rule -j REJECT
    
    			fi
    
    			if [ "$ACTION" = ifdown ] && (! ip a s tun0 up) && (! iptables -C forwarding_rule -j REJECT); then
    
    			iptables -I forwarding_rule -j REJECT
    
    			fi

Kill Switch (opcional) para OpenWrt 22.03 ou compilações mais recentes (nftables)

Siga estes passos para evitar vazamento de tráfego se o túnel da VPN não funcionar.

  1. Edite o arquivo de regras do firewall personalizado:

    sudo nano /etc/firewall.user
  2. Digite esta função:

    # when tun0 interface is down and within nftables no chain "forwarding_rule" exists, then do the following.
    			if (! ip a s tun0 up) && (! nft list chain inet fw4 forwarding_rule; then
    			# add new chain named forwarding_rule
    			   nft add chain inet fw4 forwarding_rule
    			# add rule within chain forward to jump to chain forwarding_rule
    			   nft add rule inet fw4 forward jump forwarding_rule
    
    			# add rule within chain forward_rule to reject all traffic
    			   nft add rule inet fw4 forwarding_rule reject
    			fi
  3.  Depois, é necessário criar um script para o hotplug para acionar o Kill Switch automaticamente:

    sudo nano /etc/hotplug.d/iface/99-prevent-leak
  4. Escreva o conteúdo a seguir no script:

    #!/bin/sh
    
    			# if action ifup is triggered, interface tun0 is up and the nftables chain "forwarding_rule" contains text "reject", then flush that chain in order to allow traffic.
    			if [ "$ACTION" = ifup ] && (ip a s tun0 up) && (nft list chain inet fw4 forwarding_rule | grep -q 'reject'); then
    			nft flush chain inet fw4 forwarding_rule
    			fi
    
    
    			# if action ifdown is triggered, interface tun0 is not up and the nftables chain "forwarding_rule" does not contain text "reject", then add a rule to that chain in order to reject all traffic.
    			if [ "$ACTION" = ifdown ] && (! ip a s tun0 up) && (! nft list chain inet fw4 forwarding_rule | grep -q 'reject'); then
    			nft add rule inet fw4 forwarding_rule reject
    			fi

Script de reconexão automática

Às vezes, a conexão do OpenVPN pode cair com uma saída de registro semelhante a "Não foi possível resolver o host…". Nesse caso, o túnel de VPN permanece, mas a conexão é perdida. Para criar um script que faz a reconexão automática, siga estes passos:

  1. Abra o arquivo "/etc/rc.local" usando um editor de texto:

    sudo nano /etc/rc.local
  2. Adicione a linha a seguir:

    /etc/openvpn/reconnect.sh &
  3. Crie o arquivo "reconnect.sh" no diretório "/etc/openvpn" executando este comando:

    sudo nano /etc/openvpn/reconnect.sh
  4. No arquivo, insira o conteúdo do script a seguir:

    #!/bin/sh
    
    			n=10
    
    			while sleep 50; do
    
    			t=$(ping -c $n 8.8.8.8 | grep -o -E '[0-9]+ packets r' | grep -o -E '[0-9]+')
    
    			if [ "$t" -eq 0 ]; then
    
    			/etc/init.d/openvpn restart
    
    			fi
    
    			done

Status de conexão

Após seguir essas instruções, o roteador deverá se conectar usando a conexão configurada. Para verificar se deu certo, acesse a página inicial da NordVPN. O status no topo da página deve indicar "Protegido".

Se quiser desconectar a conexão de VPN, clique no botão Parar ao lado da opção da NordVPN na seção VPN > OpenVPN > Instâncias do OpenVPN caso tenha seguido os passos da GUI. Porém, caso queira desconectar a conexão de VPN, execute o comando a seguir:

service openvpn stop
Este artigo foi útil?

Ainda com problemas?

  • Chat ao vivo

  • Formulário de e-mail

Ao clicar em “Converse com o suporte”, você concorda com nossos Termos de Serviço e reconhece nossa Política de Privacidade. A funcionalidade de chat depende de cookies. Ao iniciar o chat, você concorda com o uso deles. Saiba mais em nossa Política de Cookies.