Como configurar a OpenVPN no OPNsense?

Índice – Guia completo de configuração da VPN no OPNsense

  1. Como provisionar um servidor de VPN OPNsense utilizando o template
  2. Como configurar a OpenVPN no OPNsense
  3. Como adicionar usuário de VPN no OPNsense
  4. Como exportar o arquivo de configuração do usuário de VPN OPNsense

Neste guia, apresentamos como configurar a OpenVPN Community no OPNsense, utilizando autenticação em dois fatores (2FA) com usuários locais.

1. Configurar autenticação em dois fatores (2FA)

O OPNsense suporta diferentes servidores de backend para autenticação de usuários:

  • LDAP
  • LDAP + OTP
  • Local
  • Local + OTP
  • Radius

Neste exemplo, iremos configurar usuários locais com autenticação 2FA.

  1. Acesse: System → Access → Servers → +Add
  1. Preencha os campos:
  • Descriptive name: insira um nome para identificar o servidor
  • Type: selecione Local + Timebased One Time Password
  • Token Length: 6
  • Time window: deixe em branco
  • Grace period: deixe em branco
  • Reverse token order: não marcar
  1. Clique em Save para salvar a configuração.

Criar uma CA interna

  1. Acesse System > Trust > Certificates.
  2. Clique em + Add.
  3. Em Method, selecione Create internal Certificate Authority
  4. Preencha os campos necessários (nome descritivo, tamanho da chave, algoritmo de assinatura, validade etc.).
  5. Clique em Save.

Criar um Certificado do Servidor

  1. Acesse System > Trust > Authorities.
  2. Clique em + Add.
  3. Em Method, selecione Create an internal Certificate
  4. Preencha os campos necessários (nome descritivo, tamanho da chave, algoritmo de assinatura, validade etc.).
  5. Clique em Save.

2. Configurar o servidor OpenVPN

  1. Acesse VPN → OpenVPN → Instances
  2. Clique em + (Add) para criar uma nova instância.

Na tela de edição, configure:

General Settings

  • Role: Server
  • Description: insira um nome para identificar o servidor
  • Enabled: marcar
  • Protocol: UDP
  • Port number: 1194 (ou outra porta de sua preferência)
  • Type: TUN
  • Server (IPv4): defina uma rede para os clientes, ex: 10.10.10.0/24
  • Topology: subnet

Trust

  • Certificate: selecione o certificado do servidor (criado em System → Trust → Certificates)
  • Verify Client Certificate: required

Authentication

  • Authentication: selecione Local + OTP (o backend criado no passo 1)
  • Renegotiate time: ajuste para 36000 (10h) ou 0 (para desabilitar renegociação, recomendado em conexões com OTP)

Routing

  • Local Network: insira as redes internas que os clientes devem acessar, ex: 192.168.0.0/24

Miscellaneous

  • Ative as opções recomendadas:
    • persist-remote-ip
    • explicit-exit-notify
  • (opcional) Configure DNS, NTP e redirect gateway caso deseje que todo tráfego do cliente passe pela VPN.

Vá em VPN → OpenVPN → Connection Status e confirme se o serviço está ativo.

Clique em Save para salvar a instância.

3. Associar autenticação em 2FA ao servidor

  1. Volte em VPN → OpenVPN → Instances
  2. Clique em Edit na instância criada
  3. Em Authentication, confirme que apenas o backend Local + OTP está selecionado
  4. Clique em Save

Próximos passos

Agora que o servidor OpenVPN com 2FA está configurado:

AVISO LEGAL: Os procedimentos descritos neste documento devem ser executados de acordo com o contexto de cada sistema, de forma a evitar impactos negativos à segurança, disponibilidade, integridade e privacidade de dados. A CentralServer se reserva o direito de modificar a qualquer tempo e sem aviso prévio as informações aqui apresentadas a fim de refletir o lançamento de novos serviços, atualizações físicas e operacionais, e evolução do estado-da-arte da tecnologia.