SNX build 800007075 a partir de 2012, usado para oferecer suporte à VPN na linha de comando. Então eu testei, e eis que ele ainda funciona com as mais recentes distribuições e kernel 4.x / 5.x.
Portanto, em última análise, minha outra resposta nesse segmento é verdadeira, se você não conseguir se apossar do SNX build 800007075 ou se essa versão específica do SNX parar de funcionar com as versões atuais do Linux (isso pode acontecer em um futuro próximo) ou se você precisar de suporte do OTP .
Atualmente, a solução está instalando esta última versão específica do SNX, que ainda suporta a VPN a partir da linha de comando.
1) Para instalar a snx
compilação 800007075, obtenha-a em:
wget https://starkers.keybase.pub/snx_install_linux30.sh?dl=1 -O snx_install.sh
Para sistemas Debian e baseados em Debian de 64 bits, como Ubuntu e Linux Mint, pode ser necessário adicionar a arquitetura de 32 bits:
sudo dpkg --add-architecture i386
sudo apt-get update
Eu tive que instalar os seguintes pacotes de 32 bits:
sudo apt-get install libstdc++5:i386 libx11-6:i386 libpam0g:i386
Execute o snx
script de instalação:
chmod a+rx snx_install.sh
sudo ./snx_install.sh`
Agora você terá um /usr/bin/snx
executável binário de cliente de 32 bits. Verifique se está faltando alguma biblioteca dinâmica:
sudo ldd /usr/bin/snx
Você só pode prosseguir para os seguintes pontos quando todas as dependências forem satisfeitas.
Pode ser necessário executar manualmente primeiro snx -s CheckpointURLFQDN -u USER
, antes de criar scripts para qualquer uso automático, para que a VPN da assinatura seja salva /etc/snx/USER.db
.
2) Antes de usá-lo, você cria um ~/.snxrc
arquivo com o seguinte conteúdo:
server IP_address_of_your_VPN
username YOUR_USER
reauth yes
3) Para conectar, digite snx
$ snx
Check Point's Linux SNX
build 800007075
Please enter your password:
SNX - connected.
Session parameters:
===================
Office Mode IP : 10.x.x.x
DNS Server : 10.x.x.x
Secondary DNS Server: 10.x.x.x
DNS Suffix : xxx.xx, xxx.xx
Timeout : 24 hours
Se você entende os riscos de segurança de codificar permanentemente uma senha VPN em um script, também pode usá-la como:
echo 'Password' | snx
4) Para fechar / desconectar a VPN, enquanto você pode parar / matar snx
, a maneira melhor e oficial é emitir o comando:
$snx -d
SNX - Disconnecting...
done.
consulte também problemas de configuração da ferramenta Linux Checkpoint SNX para obter alguns esclarecimentos sobre qual snx
versão usar.
5) Ao automatizar o login e aceitar uma nova assinatura (e entender as implicações de segurança), escrevi um expect
script, que chamei de script snx_login.exp
; não muito seguro, no entanto, você pode automatizar seu login, chamando-o com a senha como argumento:
#!/usr/bin/expect
spawn /usr/bin/snx
set password [lindex $argv 0]
expect "*?assword:*"
send -- "$password\r"
expect {
"o:" {
send "y\r"
exp_continue
}
eof
}
PS. Cuidadosnx
não suporta OTP sozinho, você terá que usar o snxconnect
script presente na outra resposta, se estiver usando.
O PPS @gibies chamou minha atenção que, usando um etoken, o campo de senha obtém a senha do etoken e não uma senha fixa.
snx -s CheckpointURLFQDN -u USER
e executou-se apenas para a etapa 3.Ao trabalhar para instalar a interface oficial SSL VPN Extender do Firefox na pergunta VPN SSL Network Extender no Firefox , descobri e resolvi mais algumas peças do quebra-cabeça dessa pergunta.
Aparentemente, enquanto o uso da linha de comando
snx
do ponto de verificação foi descontinuado, o cliente baseado na Web, conforme descrito na postagem vinculada, ainda funciona. No entanto, existe um cliente de linha de comando python, que tenta replicar a interface Web + Java na parte superior dosnx
cliente, e este post é sobre como configurá-lo para funcionar.Em primeiro lugar, o
snxvp
instalado depython pip
não funciona. Existe uma versão corrigida atualizada em https://github.com/agnis-mateuss/snxvpn , que possui alguns patches úteis, incluindo uma opção para ignorar certificados não assinados e / ou expirados e, mais interessante, sendo compatível com python2 e python3.Além disso, todos os URLs ativados
snxconnect.py
devem ser alterados desslvpn/
para ``.Portanto, as instruções passo a passo são aproximadamente:
1) Primeiramente, instalando o
snx
instalação:Se estiver na VPN, para obter o arquivo de instalação, faça:
Caso contrário, você precisará obtê-lo da interface da web, conforme descrito na resposta vinculada.
Para o Debian, você pode precisar de:
Eu tive que instalar o seguinte:
Execute então:
Agora você terá um
/usr/bin/snx
executável binário de cliente de 32 bits. Verifique se está faltando alguma biblioteca dinâmica:Você só pode prosseguir para os seguintes pontos quando todas as dependências forem satisfeitas.
Não tenho certeza se você precisa executar primeiro
snx -s CheckpointURLFQDN -u USER
antes de usarsnxconnect
, para que a VPN da assinatura seja salva em/etc/snx/USER.db
.2) Agora temos o
snxconnect
utilitário python. Esse programa tenta emular a interface da web e, mais interessante, não precisa do Java para autenticar.Portanto, para instalar e configurar
snxconnect
, execute como root:. então faça como root, para python3: (recomendado)
. ou , em vez disso , faça como root, para python2:
3) Após a instalação, você pode executar como um usuário não privilegiado:
Se tudo der certo, ele solicitará a senha e exibirá:
Se você estiver com problemas para receber essa mensagem e, em vez disso, receber várias vezes seguidas, a mensagem: "Resposta inesperada, tente novamente.", Execute o método Firefox e Desconecte e efetue logout corretamente, aguardando alguns minutos antes de tentar o
snxconnect
comando novamente.4) O arquivo de cookie (s) será criado em ~ / .snxcookies, após um uso bem-sucedido.
Após o estabelecimento da VPN, você pode verificar
ip address
ouifconfig
agora possui umatunsnx
interface:ip route
mostrará também novas rotas passando pelatunsnx
interface.5) Para fechar / desconectar a VPN, enquanto você pode parar / matar
snxconnect
, a maneira melhor e oficial é emitir o comando:Além disso, eu também descobri:
snxconnect
parece se comportar melhor ao desconectar a conexão VPN anterior e sair da interface da web oficial se houver algum problema estranho (tente fazersnx -d
para verificar se produz o mesmo resultado);snx
possuir, comosnxconnect
fala com osnx
uso;snxconnect
/snx
é tratado como um host virtual e, como tal, você não pode usar diretamente o endereço IP da VPN;snx_install.sh
script;python2
uma troca por menos espaço; no entanto, como o python2 está sendo eliminado,snxconnect
em um futuro próximo, talvez não seja possível;/sslvpn
strings, pois meus URLs não começam/sslvpn
. Eu verificaria seu caso particular. Não tenho absolutamente nenhuma idéia se a presença dessa cadeia no código é devido a uma versão antiga, gostaria de receber algum feedback;snxconnect
nome do host do CheckPoint, deve ser o nome exato que a interface da web está mostrando, uma vez autenticado lá, pois é um host virtual da web. Caso contrário, você não conseguirá estabelecer a VPN;snx
é usado, um arquivo com a assinatura do servidor VPN / ponto de verificação será criado em/etc/snx/USER.db
;snxconnect
poissnx
sozinho não o suporta.fonte
-MC yes
aosnxconnect
comando para que ele funcionasse no meu caso. Funciona como um encanto agora, muito obrigado por isso, Rui!