Eu preciso me conectar de uma VM Debian Stretch amd64 a uma VPN corporativa CheckPoint.
Estou usando do ponto de vista do cliente e não conheço muitos detalhes técnicos sobre o lado do servidor. Estou usando-o com o cliente CheckPoint Mobile no Windows e sei que ele aceita conexões Web VPN com Firefox+Java, também conhecido como SSL Network Extender.
Eu tentei abri-lo no Firefox no Linux, mas não funcionou. Também investiguei alternativas de modo de texto, ou seja, o snx
cliente de linha de comando, no entanto, a literatura da CheckPoint afirma claramente que os logins diretos snx
na linha de comando não são mais suportados.
Fiz vários testes, inclusive instalando o snx
cliente linux, snxconnect
e o openconnect/vpnc
cliente VPN sem muito sucesso. Eu também suspeito que o lado do CheckPoint, além do processo já complicado, está verificando novamente o agente do usuário, pelo menos no meu caso.
O que fazer?
Estas instruções de 2018 são para versões anteriores do CheckPoint VPN pré R80 (R80.10?). Veja a nova resposta aceita para VPN/firewalls mais recentes.
Por fim, decidi me autenticar com Firefox+Java ( e depois, mudei de ideia, veja o link relacionado na parte inferior ). A própria VM não executa Java nem interface gráfica, e estou executando o Firefox em um servidor X remoto em meu notebook quando preciso me conectar à nossa rede corporativa.
O procedimento é aproximadamente:
firefox
snx
instalação do cliente Linux após fazer login na interface do cliente Web VPNfirefox
sempre que precisar usar a VPN.firefox
Quanto ao guia de etapas real:
firefox
versão mais recente não funciona executando o applet Java.Então, depois de testar algumas
firefox
versões mais antigas, decidifirefox 48
que isso seria usado apenas para fazer login na VPN. Baixei dos arquivos do Firefox .Então, no seu diretório de destino, faça:
Então faça:
Para evitar que ele seja atualizado para uma versão mais recente na primeira vez que você executar neste diretório:
Nota: na primeira vez que você o executa, você também desativa as atualizações com:
ou:
e em "Atualizações do Firefox" selecione o botão de opção: "Nunca verificar atualizações"
Se estiver na VPN, para obter o arquivo de instalação, faça:
wget --no-check-certificate https://VPN_FW_HOSTNAME/SNX/INSTALL/snx_install.sh
Como alternativa, baixe o aplicativo da interface Web VPN, em "Configurações->Editar configurações do aplicativo nativo SSL Network Extender: Baixar instalação para Linux"
Isso lhe dará um
snx_install.sh
arquivo.Você também precisa selecionar: "Ao iniciar sessão, inicie o SSL Network Extender:" altere-o para "automaticamente".
Execute então:
Você conhecerá um
/usr/bin/snx
executável binário de cliente de 32 bits. Verifique quais bibliotecas dinâmicas estão faltando com:Para o Debian, você pode precisar de:
Tive que instalar o seguinte:
Verifique novamente se alguma biblioteca dinâmica está faltando (se houver) com:
Você só pode prosseguir para o ponto a seguir quando todas as dependências estiverem satisfeitas, como o applet Java usa
snx
nos bastidores.jdk-6u45-linux-x64.bin
do site da Oracle .Para instalar faça como root:
Não vamos configurar todo o sistema para usar esta versão Java, pois é muito antiga. Apenas para usar o Java com o Firefox mais tarde:
Agora a instalação do Java está concluída.
Finalmente, para executar o firefox como um usuário comum , faça:
./Raposa de fogo
Se o Java Applet/SSL Network Extender não se iniciar após a autenticação, faça "Aplicativos Nativos->Conectar". Ele irá abrir uma janela pop-up/Java. Aguarde "Status: conectado".
Você pode então fechar a janela principal do FireFox.
Depois que a VPN for estabelecida, você pode verificar
ip address
ouifconfig
agora tem umatunsnx
interface:ip route
também mostrará novas rotas passando pelatunsnx
interface.Para maior comodidade, você pode definir como sua página inicial, a URL da WebVPN.
Veja relacionado: obtendo o Checkpoint VPN SSL Network Extender funcionando na linha de comando
Para usar a versão mais recente do firefox, depois de instalar
snx_install.sh
ecshell_install.sh
abrir https://localhost:14186/id em uma guia separada do Firefox e adicionar uma exceção de segurança para o site " https://localhost:14186/ ". Depois que a exceção for adicionada, você verá um identificador exclusivo no formato HEX. Agora você pode fechar esta guia e tentar se conectar novamente.@ Kubuntu 18.04 32 bits, Firefox 75.0 (32 bits), openjdk-8
Deve-se adicionar ao firefox uma exceção para a página https://localhost:14186/id , que foi um problema no meu caso, o applet foi iniciado, mas não quis continuar porque não tem o direito de obter este https://localhost: 14186/id
Também devo observar que iniciei com sucesso o vpn no Firefox 75.0 (32 bits) e no openjdk-8, sem fazer o downgrade para o Firefox 48 e jdk-6u45, embora eu tenha tentado isso também, e cshell_install.sh não queria para instalar em jdk-6u45
Mas de qualquer forma muito obrigado ao autor da resposta - Rui F Ribeiro. Ajudou-me muito
É 2022, e embora minha resposta anterior ainda seja válida para lançamentos de checkpoint pré-R80, o mundo seguiu em frente. O Firefox não executa mais applets Java, então a CheckPoint moveu o applet Java de middleware para o lado cliente/Linux como um daemon Java - daemon CShell (cerca de 2 anos atrás).
O daemon SNX SSL Network Extender, apesar do binário executável infelizmente ainda ser de 32 bits, agora além de usar encapsulamento SSLv3 para firewalls antigos, suporta e funciona apenas com TLS 1.2 para os novos firewalls. Ele também tem mudanças leves para torná-lo incompatível com o esforço de engenharia reversa python do snxconnect.
Por outro lado, não há mais exigência para o Mobile Access Portal Agent (CShell) nem de usar Java 8 nem uma implementação Oracle Java nem uma versão específica do Firefox. Ele foi testado com sucesso com várias versões do CheckPoint usando o openJDK JRE 11.
Enquanto ajudava uma equipe de desenvolvimento nossa a se adaptar ao novo cenário, inicialmente escrevi instruções para o Debian, depois em uma 2ª versão patches para cshell_install.sh por causa de seu mau comportamento. Eventualmente, cheguei à conclusão de que você pode não querer que sua máquina seja sobrecarregada por ter que ter multiarch com 32 bits ativo, ou Java, ou ter que corrigir qualquer nova variação do cshell_install.sh.
Como tal, escreveu instruções para ter o SNX mais o "novo" daemon Java CShell em um chroot. No entanto, o documento era muito grande e escrevi um script para o Debian.
Eventualmente, o script evoluiu, para requisitos falsos em vez de corrigir os scripts da CheckPoint, e para suportar a maioria das principais distribuições, muito mais do que usar o SNX + cshell_install.sh em sua forma oficial "nua" (que, por exemplo, as versões mais recentes do Fedora não suporte mais longo).
Você pode buscá-lo aqui:
https://github.com/ruyrybeyro/chrootvpn
Para obter e instalar o script para criar automaticamente um chroot e fazer sua VPN funcionar, você deve usar um usuário configurado para sudo e fazer:
Quaisquer distribuições derivadas do Debian/Ubuntu, SUSE ou RedHat/CentOS/Fedora são suportadas. Qualquer variação do Arch também, desde que esteja configurado com o Network Manager. Slackware, Void e Gentoo Linux também.
No entanto, se não estiver usando o script acima, as instruções para o Debian, para uma configuração simples, oficial e sem chroot são:
Abra o Mobile Portal VPN no navegador, https://VPN_FW_HOSTNAME, e autentique com usuário e senha (+ PIN de fator duplo, se houver); quando o navegador perguntar se você deseja salvar uma senha, selecione “Nunca salvar”
Selecione as configurações. Altere os padrões para:
Ao fazer login, inicie o SSL Network Extender: Conecte automaticamente o SSL Network Extender usando: Modo de rede
Selecione OK.
Feche o navegador.
Baixe os scripts de configuração de clientes Linux do firewall:
Corre:
chmod a+rx snx_install.sh cshell_install.sh
Instalando o SNX:
Instale o firefox, antes de instalar o agente Java:
Execute o Firefox e feche-o.
Tendo instalado o firefox-esr, para compatibilidade com o script CheckPoint cshell_install.sh:
Certifique-se de abri-lo para que o perfil do usuário seja criado. É imprescindível chamá-lo usando o usuário não privilegiado que será usado diariamente. A falha em já ter executado/ter um perfil do Firefox/Chrome em /home significa que o cshell_install.sh não atenderá aos requisitos mínimos e interromperá a configuração.
Instalando o Agente do Portal de Acesso Móvel
Para a próxima etapa, o firefox não deve estar em execução:
Se a instalação correu bem:
O daemon CShell deve estar em execução agora. Caso não seja:
Para verificar se o certificado foi instalado, você também pode fazer:
Finalmente, entre no firefox novamente e visite
https://localhost:14186/id
para aceitar o certificado autoassinado https://localhost:14186 CheckPoint.
Autentique novamente com seu login e sua senha (+ PIN de fator duplo, se houver) no endereço do portal móvel do firewall.
A conexão com a VPN agora deve ser automática. Caso contrário, clique em Conectar.
Esteja ciente de que, seguindo as etapas manuais sem o script chroot, os requisitos de instalação do cshell_install.sh são complicados e, se não atendidos, ele é interrompido.
Páginas de suporte relevantes do CheckPoint Linux:
Extensor de rede SSL https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk65210#Linux%20Supported%20Platforms
Como instalar o cliente SSL Network Extender (SNX) em máquinas Linux https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk114267
Pré-requisitos do Agente do Portal de Acesso Móvel para Linux https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk119772
Portal de acesso móvel e compatibilidade com Java https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk113410
O Mobile Access Portal Agent for Mozilla Firefox pede para reinstalar mesmo depois de instalado corretamente https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk122576&partition=Advanced&product=Mobile