O seu colega de Windows importa um perfil do assistente FortiGate e fica online num minuto. Você instala o mesmo pacote do fornecedor no Ubuntu, procura um separador IPsec e encontra um cliente que só sabe abrir um SSL VPN. A conclusão que se segue costuma estar errada duas vezes: o gateway não o está a rejeitar e a compilação de Linux não está avariada. A Fortinet fornece esse cliente apenas com suporte SSL VPN, por isso um perfil IPsec móvel não tem onde viver e tem de ser reconstruído onde se fala IKEv1.

Primeiro, decida que protocolo lhe foi realmente atribuído

Essa reconstrução é mecânica assim que deixa de tratar o cliente do fornecedor como a implementação de referência.

Os dispositivos FortiGate publicam tanto SSL VPN como IPsec, e o e-mail de entrega raramente diz qual lhe foi concedido. Um URL de portal mais uma página de início de sessão ao estilo do navegador significa SSL VPN, e no Linux a resposta aí é o openfortivpn, não o mapeamento de campos abaixo. Um identificador de grupo mais uma chave pré-partilhada significa IPsec móvel, que é o que o vpnc e o strongSwan gerem.

Fazer isto mal é a razão mais comum para uma tentativa em Linux morrer antes de a primeira fase terminar: o cliente está a oferecer IKEv1 a um portal HTTPS ou vice-versa. Peça ao administrador o nome do protocolo por escrito antes de instalar seja o que for.

Quatro credenciais viajam em quatro campos diferentes

A palavra password aparece duas vezes na maioria das entregas e significa duas coisas diferentes. A chave pré-partilhada autentica o próprio peer, e é um segredo de máquina que o administrador lê da configuração do gateway. A palavra-passe da sua conta é uma credencial separada que prova que pessoa está por trás desse peer.

Os outros dois valores são mais fáceis de perder. O identificador de grupo é a cadeia que o assistente escreveu no objeto de grupo IPsec, e 0 é um valor legítimo e não um campo vazio. A proposta cobre cifra, hash e um grupo Diffie-Hellman para cada fase, além da definição PFS, e cada item tem de concordar com o gateway. Quando uma ligação falha na fase 1, quase sempre o culpado é um desses quatro, por isso anote-os em separado em vez de os atirar para uma única janela.

O que cada campo do vpnc tem de conter

Instale o cliente juntamente com a interface do editor e depois crie uma ligação VPNC:

sudo apt install vpnc network-manager-vpnc network-manager-vpnc-gnome

Defina o gateway como o endereço público do FortiGate e o nome do grupo exatamente como o identificador do gateway, incluindo um zero nu. Group password recebe a chave pré-partilhada, enquanto o nome de utilizador e a palavra-passe recebem a sua conta, com qualquer token acrescentado como o gateway espera. Na janela avançada, escolha o grupo Diffie-Hellman que a proposta nomeia, alinhe o PFS com o mesmo grupo, ative o NAT traversal quando o cliente está atrás de um router doméstico e deixe a deteção de peer morto no mesmo passo do gateway.

O nome do grupo é o campo que se salta, porque parece opcional e o zero predefinido assemelha-se a um marcador. Envie-o vazio e o cliente transmite um identificador diferente do que o gateway valida. Se o perfil continuar a falhar, compare os valores avançados com o cliente Windows que funciona e não com uma mensagem de fórum para outro site.

O mesmo perfil escrito para strongSwan

O strongSwan é o melhor contentor a longo prazo para estes valores, já que a configuração é um ficheiro de texto que pode rever e guardar:

conn office-fw
    keyexchange=ikev1
    aggressive=yes
    left=%any
    leftauth=psk
    leftauth2=xauth
    xauth_identity=YOUR_USER
    right=GATEWAY_ADDRESS
    rightauth=psk
    rightsubnet=OFFICE_SUBNET
    ike=aes128-sha1-modp1536!
    esp=aes128-sha1-modp1536!

Leia as linhas da proposta antes do bloco, porque o ponto de exclamação final muda o seu significado: fixa essa única proposta e remove as alternativas que o cliente ofereceria de outra forma. Um gateway configurado para um único par de transformações rejeitará um cliente que abre com uma lista, por isso é a fixação que transforma uma negociação numa correspondência. Retire os nomes exatos dos algoritmos do perfil do gateway que funciona e substitua os marcadores pelos seus próprios valores.

As duas linhas de autenticação não são redundantes. A PSK prova o peer, o bloco XAuth prova o utilizador, e retirar qualquer uma delas deixa uma fase que o gateway não terminará.

Leia a falha antes de mudar outro campo

Trabalhe de trás para a frente a partir do sintoma em vez de voltar a aleatorizar a janela. Um IKE SA que sobe sem endereço atribuído significa que a troca de autenticação do utilizador falhou ou nunca correu, por isso verifique a conta e o tratamento do token. Uma fase 1 que nunca termina aponta para a proposta, o identificador de grupo ou o modo agressivo, e cada um deles é comparado com o gateway, não apenas com o cliente Windows.

Um túnel que se estabelece e depois morre a cada poucos minutos é um desacordo de deteção de peer morto entre as duas pontas; alinhe o temporizador do gateway em vez de desativar os keepalives em todo o lado. Um túnel estabelecido em que os anfitriões do escritório continuam inalcançáveis normalmente significa que a sub-rede empurrada nunca chegou à tabela de encaminhamento local, algo que um cliente de terceiros pode não fazer sozinho.

Devolva os valores que funcionam ao proprietário do gateway quando terminar: protocolo, identificador de grupo, chave pré-partilhada, proposta, PFS e a decisão DPD. A máquina Linux seguinte passa então a demorar minutos em vez de uma noite, e ninguém tem de redescobrir que o nome do grupo era zero.

Artigos relacionados