Saltar para o conteudo
Avanet

Configurar Remote Access do Sophos Firewall em Linux

Para o Sophos Firewall Remote Access em Linux, a forma mais simples é utilizar SSL VPN com o cliente OpenVPN normal. O Sophos Connect não está disponível para Linux. O ficheiro .ovpn é descarregado no VPN Portal e utilizado no terminal ou através do NetworkManager.

A alternativa IPsec muitas vezes mencionada anteriormente com NetworkManager-strongSwan não é compatível com a configuração atual do Sophos Firewall: Remote access VPN > IPsec aceita apenas perfis IKEv1 no SFOS 22, enquanto o plugin NetworkManager-strongSwan suporta exclusivamente IKEv2.

⚠️ Não instalar nenhum “Sophos Connect para Linux” não oficial nem mudar o perfil de Remote Access do SFOS para IKEv2 por causa desta instrução. O caminho OpenVPN descrito a seguir é o método para Linux documentado pela Sophos.

Existem instruções próprias para outros dispositivos: Sophos Connect no Windows e Sophos Connect no macOS, bem como SSL VPN no iPhone e iPad e SSL VPN no Android.

Pré-requisitos

  • Está configurada uma policy de Remote Access SSL VPN no Sophos Firewall.
  • O utilizador ou o respetivo grupo está atribuído a esta policy.
  • Uma regra de firewall adequada permite o tráfego necessário a partir da zona VPN.
  • O utilizador consegue aceder ao VPN Portal e iniciar sessão.
  • Existem permissões sudo locais no sistema Linux para instalar pacotes e iniciar o OpenVPN.
  • Se o MFA estiver ativo, o início de sessão funciona, incluindo o código de verificação.

A configuração no firewall é descrita em Configurar Sophos Firewall SSL VPN Remote Access. Se mais tarde o ficheiro .ovpn não aparecer no VPN Portal, tiver 0 bytes ou contiver apenas uma mensagem de erro, Sophos Firewall: ficheiro .ovpn ausente ou com 0 bytes conduz pela verificação da policy, do utilizador, do certificado e do sistema.

Configurar SSL VPN com OpenVPN

1. Instalar o OpenVPN

No Debian e Ubuntu, o cliente OpenVPN é instalado assim:

sudo apt install openvpn

Outras distribuições também disponibilizam o pacote através do respetivo gestor de pacotes. Para uma gestão gráfica no GNOME, pode instalar-se adicionalmente o plugin OpenVPN do NetworkManager:

sudo apt install network-manager-openvpn-gnome

Este plugin não deve ser confundido com network-manager-strongswan. Importa o ficheiro .ovpn e utiliza OpenVPN.

2. Descarregar a configuração OpenVPN

  1. Abrir o VPN Portal do Sophos Firewall no browser.
  2. Iniciar sessão com o utilizador VPN.
  3. Em VPN > VPN configuration, clicar em Download configuration for Windows, macOS, Linux.
  4. Se aparecerem várias variantes OpenVPN, escolher a configuração adequada ao cliente instalado.
  5. Descarregar o ficheiro .ovpn e guardá-lo em local seguro.

O ficheiro pode conter certificados e dados de ligação específicos do utilizador. Não deve ser distribuído por e-mail não encriptado nem através de repositórios públicos.

3. Iniciar a ligação no terminal

Mudar para o diretório que contém o ficheiro e iniciar o OpenVPN. Exemplo com o nome de ficheiro sophos-vpn.ovpn:

chmod 600 sophos-vpn.ovpn
sudo openvpn --config sophos-vpn.ovpn

O OpenVPN pede o nome de utilizador e a palavra-passe e, se aplicável, o código MFA. A ligação é executada em primeiro plano. Se o terminal for fechado ou o processo for terminado com Ctrl+C, o túnel também é interrompido.

4. Importar a ligação no NetworkManager

  1. Abrir as definições de rede.
  2. Adicionar uma nova ligação VPN e escolher Import from file.
  3. Selecionar o ficheiro .ovpn descarregado.
  4. Guardar o nome de utilizador se isso for adequado ao modelo operacional.
  5. Iniciar a ligação e introduzir a palavra-passe e, se aplicável, o código MFA.

O NetworkManager é mais confortável no dia a dia do que manter um terminal permanentemente aberto. No entanto, um arranque automático não assistido não é automaticamente possível com início de sessão interativo ou MFA. As credenciais não devem ser guardadas num ficheiro desprotegido apenas para permitir o arranque automático.

Porque o NetworkManager-strongSwan não é compatível neste caso

No SFOS 22, a Sophos permite em Remote access VPN > IPsec apenas perfis IKEv1 nos quais o Dead Peer Detection está desativado ou definido como Disconnect. Em contrapartida, o plugin NetworkManager-strongSwan estabelece apenas ligações IKEv2. Por isso, com o procedimento anteriormente descrito, as duas extremidades não conseguem negociar um túnel.

O próprio software strongSwan continua a ter funções IKEv1, mas este não é o mesmo caminho gráfico que o plugin NetworkManager. Uma configuração IKEv1 manual requer parâmetros, autenticação, Traffic Selectors e uma configuração de cliente testada que sejam adequados. Sem uma configuração de destino fiável, não se deve utilizar um exemplo genérico da Internet.

A Sophos indica um cliente de terceiros compatível como possibilidade para IPsec em Linux. No entanto, o ficheiro .tgb exportado não contém todas as definições avançadas da configuração Sophos Connect e não pode ser simplesmente importado como perfil IKEv2 no NetworkManager. Se o IPsec for obrigatório, o cliente escolhido deve suportar explicitamente a configuração IKEv1 do firewall e ser testado no ambiente em causa. Para a escolha fundamental, consulte Sophos Connect ou SSL VPN: qual solução de Remote Access é a mais adequada?.

Verificar a ligação

Depois de estabelecer a ligação, não se deve verificar apenas o estado do cliente. O que importa é se a rota, o DNS e a regra de firewall correspondem ao destino pretendido.

Estes comandos Linux são apenas de leitura. No exemplo, 10.20.30.40 deve ser substituído por um destino interno permitido:

ip addr show
ip route get 10.20.30.40
getent hosts intranet.example.net

Resultados esperados:

  • O OpenVPN indica uma ligação bem-sucedida e existe uma interface de túnel.
  • A verificação da rota mostra o caminho VPN para o destino interno em vez do gateway normal da Internet.
  • A verificação de DNS devolve o endereço interno, desde que a policy VPN distribua servidores DNS internos.
  • Um serviço interno permitido está acessível; um destino deliberadamente não permitido continua bloqueado.
  • No Log Viewer do firewall, o tráfego de teste aparece a partir da zona VPN com a regra esperada.
  • Após um novo início de sessão, o código MFA volta a ser solicitado conforme previsto.

Se o túnel estiver estabelecido, mas não houver tráfego, consulte Testar regras de firewall com Log Viewer, Policy Test e Packet Capture.

Erros típicos

  • Não existe configuração Linux no VPN Portal: o utilizador ou grupo não está atribuído a uma policy de Remote Access SSL VPN. Verificar a policy e o início de sessão no portal.
  • O OpenVPN indica um erro de autenticação: verificar o nome de utilizador, a palavra-passe, o processo MFA, a associação ao grupo e o método de autenticação selecionado.
  • O túnel está estabelecido, mas os destinos internos continuam inacessíveis: verificar as redes permitidas da policy de SSL VPN, a regra de firewall da zona VPN para a zona de destino e a rota para a rede interna.
  • Os endereços IP funcionam, mas os nomes internos não: verificar os servidores DNS distribuídos, o domínio de pesquisa e a acessibilidade do servidor DNS interno.
  • O terminal foi fechado e a ligação perdeu-se: isto é normal com a execução direta de openvpn --config. Para a gestão gráfica, importar o ficheiro .ovpn no NetworkManager.
  • O NetworkManager não oferece a importação de ficheiros: o plugin OpenVPN do NetworkManager está em falta ou o serviço NetworkManager ainda não carregou o plugin recém-instalado.
  • O ficheiro .ovpn antigo deixou de funcionar: depois de alterações ao protocolo SSL VPN, ao certificado de servidor SSL ou à CA, ao Override hostname ou à porta SSL VPN, descarregar novamente o ficheiro.
  • O NetworkManager-strongSwan não estabelece ligação: não mudar para IKEv2. O plugin não é compatível com o perfil IKEv1 de Remote Access do Sophos Firewall.
  • Foi encontrado um alegado cliente Sophos Connect para Linux: não o instalar sem verificação. A Sophos não disponibiliza um cliente Linux oficial.

FAQ

Existe um cliente Sophos Connect oficial para Linux?

Não. O Sophos Connect está disponível para Windows e macOS. Em Linux, SSL VPN com um cliente OpenVPN é o caminho documentado pela Sophos.

Que ficheiro deve ser descarregado no VPN Portal para Linux?

Em VPN > VPN configuration, utiliza-se Download configuration for Windows, macOS, Linux. O ficheiro .ovpn só aparece se estiver atribuída ao utilizador uma policy de Remote Access SSL VPN.

Porque é interrompida a ligação VPN ao fechar o terminal?

A execução direta de sudo openvpn --config corre em primeiro plano no terminal. Para uma ligação com gestão gráfica, o ficheiro .ovpn pode ser importado no NetworkManager.

É possível utilizar o NetworkManager para Sophos Firewall Remote Access?

Sim, com o plugin OpenVPN do NetworkManager e o ficheiro .ovpn. O plugin NetworkManager-strongSwan, por outro lado, suporta apenas IKEv2 e não é compatível com o perfil IPsec IKEv1 de Remote Access do SFOS 22.

É necessário descarregar novamente o ficheiro .ovpn depois de uma alteração no firewall?

Sim, se o protocolo SSL VPN, o certificado de servidor SSL ou a CA, o Override hostname ou a porta SSL VPN tiverem sido alterados. Caso contrário, um ficheiro antigo pode continuar a conter parâmetros de ligação desatualizados.