SNX Build 800007075 von 2012, zur Unterstützung von VPN in der Befehlszeile. Also habe ich es getestet und siehe da, es funktioniert immer noch mit den neuesten Distributionen und Kernel (s) 4.x.
Letztendlich gilt die andere Antwort in diesem Thread, wenn Sie SNX Build 800007075 nicht erhalten können oder wenn diese bestimmte Version von SNX nicht mehr mit den aktuellen Linux-Versionen funktioniert (dies könnte in naher Zukunft passieren) oder wenn Sie OTP-Unterstützung benötigen .
Derzeit installiert die Lösung diese spezielle letzte Version von SNX, die weiterhin das VPN über die Befehlszeile unterstützt.
1) snx
Um Build 800007075 zu installieren , mache ich:
wget https://starkers.keybase.pub/snx_install_linux30.sh?dl=1 -O snx_install.sh
Für Debian und Debian-basierte Systeme wie Ubuntu und Linux Mint benötigen Sie möglicherweise:
sudo dpkg --add-architecture i386
sudo apt-get update
Ich musste folgendes installieren:
sudo apt-get install libstdc++5:i386 libx11-6:i386 libpam0g:i386
Führen Sie dann aus:
chmod a+rx snx_install.sh
sudo ./snx_install.sh`
Sie kennen eine /usr/bin/snx
ausführbare 32-Bit-Client-Binärdatei. Überprüfen Sie, ob dynamische Bibliotheken fehlen, mit:
sudo ldd /usr/bin/snx
Sie können erst mit dem folgenden Punkt fortfahren, wenn alle Abhängigkeiten erfüllt sind.
Möglicherweise müssen Sie zuerst manuell ausführen, snx -s CheckpointURLFQDN -u USER
bevor Sie eine automatische Verwendung als Skript ausführen können, damit das Signatur-VPN unter gespeichert wird /etc/snx/USER.db
.
2) Bevor Sie es verwenden, erstellen Sie eine ~/.snxrc
Datei mit folgendem Inhalt:
server IP_address_of_your_VPN
username YOUR_USER
reauth yes
3) Geben Sie zum Anschließen Folgendes ein 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
Wenn Sie die Sicherheitsrisiken einer harten Codierung eines VPN-Kennworts in einem Skript kennen, können Sie es auch wie folgt verwenden:
echo 'Password' | snx
4) Zum Schließen / Trennen des VPN, während Sie möglicherweise stoppen / beenden, snx
ist der bessere und offizielle Weg, den folgenden Befehl auszugeben:
$snx -d
SNX - Disconnecting...
done.
siehe auch Linux Checkpoint SNX - Tool Konfigurationsprobleme für einige Präzisierungen über die snx
Version zu verwenden.
5) Wenn ich die Anmeldung automatisiere und eine neue Signatur akzeptiere (und die Auswirkungen auf die Sicherheit verstehe), habe ich ein expect
Skript geschrieben, das ich aufgerufen habe snx_login.exp
:
#!/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. Beachten snx
Sie, dass OTP nicht allein unterstützt wird. Sie müssen das snxconnect
Skript verwenden, das in der anderen Antwort enthalten ist, wenn Sie es verwenden.
PPS @gibies machte mich darauf aufmerksam, dass das Kennwortfeld bei Verwendung eines Etoken das Kennwort vom Etoken erhält und kein festes Kennwort.
snx -s CheckpointURLFQDN -u USER
und nur bis zu Schritt 3 ausgeführt.Bei der Installation der offiziellen SSL VPN Extender-Schnittstelle von Firefox in der Frage VPN SSL Network Extender in Firefox habe ich einige weitere Teile des Puzzles dieser Frage herausgefunden und gelöst.
Anscheinend
snx
funktioniert der webbasierte Client, wie im verlinkten Beitrag beschrieben, immer noch , obwohl die Verwendung der Befehlszeile von Checkpoint aus eingestellt wurde. Es gibt jedoch einen Python-Befehlszeilen-snx
Client, der versucht, die Web + Java-Schnittstelle über dem Client zu replizieren. In diesem Beitrag geht es darum, sie für die Arbeit einzurichten.Erstens funktioniert die
snxvp
Installation vonpython pip
nicht. Unter https://github.com/agnis-mateuss/snxvpn gibt es eine aktualisierte gepatchte Version , die einige nützliche Patches enthält, einschließlich einer Option zum Ignorieren nicht signierter und / oder abgelaufener Zertifikate, und interessanterweise Python2- und Python3-kompatibel ist.Außerdem müssen alle URLs
snxconnect.py
vonsslvpn/
auf `` geändert werden .Die Schritt-für-Schritt-Anleitung lautet also ungefähr:
1) Installieren Sie zuerst das
snx
Setup:Wenn Sie sich im VPN befinden, um die Installationsdatei abzurufen, gehen Sie wie folgt vor:
Andernfalls müssen Sie es von der Weboberfläche abrufen, wie in der verknüpften Antwort beschrieben.
Für Debian benötigen Sie möglicherweise:
Ich musste folgendes installieren:
Führen Sie dann aus:
Sie kennen eine
/usr/bin/snx
ausführbare 32-Bit-Client-Binärdatei. Überprüfen Sie, ob dynamische Bibliotheken fehlen, mit:Sie können erst mit dem folgenden Punkt fortfahren, wenn alle Abhängigkeiten erfüllt sind.
Nicht sicher, ob Sie
snx -s CheckpointURLFQDN -u USER
vor der Verwendung zuerst ausführen müssensnxconnect
, damit das Signatur-VPN unter gespeichert wird/etc/snx/USER.db
.2) Jetzt haben wir das
snxconnect
Python-Dienstprogramm. Ein solches Programm versucht, die Weboberfläche zu emulieren, und interessanterweise benötigt es kein Java zur Authentifizierung.Um das Setup zu installieren
snxconnect
, gehen Sie wie folgt vor:. dann mache als root für python3: (empfohlen)
. oder stattdessen als root für python2:
3) Nach der Installation können Sie als nicht privilegierter Benutzer ausgeführt werden:
Wenn alles in Ordnung ist, wird nach dem Passwort gefragt und dann gesagt:
Wenn Sie Probleme beim Abrufen dieser Nachricht haben und stattdessen mehrmals hintereinander die Meldung "Unerwartete Antwort, versuchen Sie es erneut." Ausführen, führen Sie die Firefox-Methode aus und trennen Sie die Verbindung und melden Sie sich ordnungsgemäß ab. Warten Sie einige Minuten, bevor Sie die Nachricht abrufen
snxconnect
Befehl erneut.4) Die Cookie-Datei (en) wird nach erfolgreicher Verwendung bei ~ / .snxcookies erstellt.
Nachdem das VPN eingerichtet wurde, können Sie dies überprüfen
ip address
oderifconfig
Sie haben jetzt einetunsnx
Schnittstelle:ip route
zeigt Ihnen auch neue Routen durch dietunsnx
Benutzeroberfläche.5) Zum Schließen / Trennen des VPN, während Sie möglicherweise stoppen / töten
snxconnect
, ist der bessere und offizielle Weg, den folgenden Befehl auszugeben:Außerdem habe ich auch herausgefunden:
snxconnect
scheint sich besser zu verhalten, wenn die vorherige VPN-Verbindung getrennt und in der offiziellen Weboberfläche abgemeldet wird, wenn ein seltsames Problem auftritt (muss versuchen, festzustellensnx -d
, ob das gleiche Ergebnis erzielt wird);snx
zu besitzen, da essnxconnect
mit dersnx
Verwendung spricht ;snxconnect
/ übergebene Hostnamesnx
wird als virtueller Host behandelt. Daher können Sie die VPN-IP-Adresse nicht direkt verwenden.snx_install.sh
Skripts zu sein.python2
Kompromiss für weniger Speicherplatz zu fungieren. Da Python2 jedoch ausläuft, wird essnxconnect
in naher Zukunft möglicherweise nicht unterstützt./sslvpn
Zeichenfolgen patchen / löschen muss , da meine URLs nicht mit beginnen/sslvpn
. Ich würde Ihren speziellen Fall überprüfen. Ich habe absolut keine Ahnung, ob das Vorhandensein dieser Zeichenfolge im Code auf eine alte Version zurückzuführen ist. Ich würde mich über Feedback freuen.snxconnect
der CheckPoint Hostnamen hat die genaue Bezeichnung der Webinterfaces zeigt Ihnen einmal dort authentifiziert sein, da es sich um eine Web - virtuellen Host ist. Andernfalls gelingt es Ihnen nicht, das VPN einzurichten.snx
Verwendung wird eine Datei mit der Signatur des VPN / Checkpoint-Servers unter erstellt/etc/snx/USER.db
.snxconnect
da essnx
allein nicht unterstützt wird.quelle
-MC yes
densnxconnect
Befehl ergänzen , damit er in meinem Fall funktioniert. Funktioniert jetzt wie ein Zauber, vielen Dank dafür, Rui!