Instalou o pacote AWS Client VPN no Ubuntu, executou-o e recebeu um erro do carregador sobre uma biblioteca partilhada em falta antes de qualquer perfil ser lido. O instinto é ir buscar essa biblioteca a uma versão anterior e continuar. Isso costuma trocar uma dependência quebrada por um sistema que já não corresponde à sua própria base de pacotes. A falha de arranque é uma questão de limite de suporte, não de rede.

O erro nomeia uma biblioteca, não a rede

Um cliente VPN de ambiente de trabalho tem de carregar o seu ambiente de execução antes de poder olhar para o seu perfil ou para o seu ponto final. Quando o carregador dinâmico não consegue resolver um símbolo, o processo morre no primeiro segundo e a janela nunca aparece. Nenhuma quantidade de edição de perfil, trabalho de DNS ou alterações de rotas chega a essa fase. Leia a mensagem à letra, porque está a dizer exatamente que objeto o carregador queria.

É também assim que separa duas famílias de falhas. Um objeto partilhado em falta é um problema de empacotamento no seu anfitrião, enquanto uma rejeição de autenticação é uma decisão do lado do serviço que chega muito mais tarde na sequência.

Ambas terminam com uma janela que se fecha, por isso são confundidas nos relatórios de erros.

Os interruptores de globalização são outro problema

Os erros que mencionam ICU ou globalização vêm do ambiente .NET por baixo de algumas compilações do cliente, não da pilha TLS. Definir o interruptor de globalização invariante altera a forma como esse ambiente trata os dados de cultura e não fornece uma libssl em falta. Aplicá-lo para silenciar um erro de TLS deixa-o com um cliente que arranca e depois falha noutro sítio.

Mantenha os dois em caixas separadas: um altera o comportamento do ambiente, o outro satisfaz um ligador. Recorrer ao primeiro quando tem o segundo é um hábito que vale a pena abandonar.

Se o anfitrião realmente não consegue fornecer o ambiente exigido, a resposta suportada é outro anfitrião, não um modificado.

Porque importar um OpenSSL antigo se volta contra si

Copiar libssl e libcrypto de uma distribuição mais antiga para /usr/lib funciona com frequência suficiente para ser tentador. Também coloca uma biblioteca fora do controlo do gestor de pacotes, pelo que cada atualização de segurança posterior ou a perde ou colide com ela. Num anfitrião que também executa um navegador ou um cliente SSH, alterou a pilha criptográfica de programas que nunca o pediram.

O caminho suportado é a fonte de pacotes documentada e a sua resolução de dependências para exatamente a sua versão do sistema e arquitetura. Consulte os requisitos do cliente AWS para Linux e as notas de versão da versão que instala, porque a matriz de suporte muda entre versões.

Uma solução antiga de fórum é uma captura de um par de versões, não uma garantia de compatibilidade.

Preserve a definição de serviço do fornecedor

Alguns guias dão-lhe uma unidade systemd mínima para substituir a que vem no pacote. Essa unidade costuma descartar argumentos, definições de endurecimento e integração que o fornecedor acrescentou mais tarde, e a falha resultante aparece num sítio que não vai ligar à edição.

Se precisar de uma alteração, use antes um drop-in: um pequeno ficheiro de substituição no diretório .d da unidade que acrescenta ou substitui uma diretiva, com um comentário a dizer porque existe e como revertê-lo. Mantém o ficheiro do fornecedor intacto, e a próxima atualização do pacote não desfaz o seu trabalho em silêncio nem o duplica.

Escreva o caminho da substituição nas suas notas, porque o próximo administrador vai olhar lá primeiro.

Prove o arranque antes de depurar rotas

Faça o cliente arrancar de forma fiável com o perfil aprovado, depois inicie sessão, depois confirme o túnel, e só então olhe para rotas, DNS e recursos privados. Cada etapa produz a sua própria evidência, e misturá-las faz um problema de ambiente parecer um problema de encaminhamento. Se precisar de suporte do fornecedor, capture o primeiro evento de arranque útil em vez de uma captura da janela que se fecha.

Nunca anexe uma chave privada ou um perfil completo com credenciais incorporadas como material de diagnóstico.

Uma pergunta resolve a maioria destes casos: a versão de cliente instalada ainda é suportada nesta versão do sistema? Se não for, a correção é um par suportado, não outra caça às bibliotecas.

Artigos relacionados