SNX build 800007075 от 2012 года, используется для поддержки VPN в командной строке. Итак, я протестировал его, и вот, он все еще работает с последними дистрибутивами и ядром (ями) 4.x / 5.x.
В конечном счете, мой другой ответ в этой теме остается верным, если вы не можете получить сборку SNX 800007075 или эта конкретная версия SNX перестает работать с текущими версиями Linux (это может произойти в ближайшем будущем) или если вам нужна поддержка OTP ,
В настоящее время решением является установка этой конкретной последней версии SNX, которая по- прежнему поддерживает выполнение VPN из командной строки.
1) Чтобы установить snx
сборку 800007075, получите ее:
wget https://starkers.keybase.pub/snx_install_linux30.sh?dl=1 -O snx_install.sh
Для 64-разрядных систем Debian и Debian, таких как Ubuntu и Linux Mint, вам может потребоваться добавить 32-разрядную архитектуру:
sudo dpkg --add-architecture i386
sudo apt-get update
Мне пришлось установить следующие 32-битные пакеты:
sudo apt-get install libstdc++5:i386 libx11-6:i386 libpam0g:i386
Запустите snx
установочный скрипт:
chmod a+rx snx_install.sh
sudo ./snx_install.sh`
Теперь у вас будет /usr/bin/snx
32-битный клиентский двоичный исполняемый файл. Проверьте, отсутствуют ли какие-либо динамические библиотеки с:
sudo ldd /usr/bin/snx
Вы можете перейти к следующим пунктам, когда все зависимости удовлетворены.
Вам может потребоваться запустить вручную snx -s CheckpointURLFQDN -u USER
, прежде чем создавать сценарии автоматического использования, для сохранения подписи VPN на /etc/snx/USER.db
.
2) Перед его использованием вы создаете ~/.snxrc
файл со следующим содержимым:
server IP_address_of_your_VPN
username YOUR_USER
reauth yes
3) Для подключения введите 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
Если вы понимаете риски безопасности жесткого кодирования пароля VPN в сценарии, вы также можете использовать его как:
echo 'Password' | snx
4) Для закрытия / отключения VPN, когда вы можете остановить / убить snx
, лучший и официальный способ - ввести команду:
$snx -d
SNX - Disconnecting...
done.
см. также вопросы конфигурации инструмента Linux Checkpoint SNX для получения некоторых разъяснений о том, какую snx
версию использовать.
5) Если автоматизировать вход в систему и принять новую подпись (и понять последствия для безопасности), я написал expect
сценарий, который я назвал сценарий 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. Осторожно snx
, не поддерживает только OTP, вам придется использовать snxconnect
скрипт, присутствующий в другом ответе, если вы его используете.
PPS @gibies обратил мое внимание на то, что используя etoken, поле пароля получает пароль из etoken, а не фиксированный пароль.
snx -s CheckpointURLFQDN -u USER
и выполнил только до шага 3.При работе по установке Firefox официальный интерфейс SSL VPN Extender в вопросе VPN SSL Network Extender в Firefox , я обнаружил и решил еще несколько частей головоломки этого вопроса.
Очевидно, что хотя использование командной строки
snx
из контрольной точки было прекращено, веб-клиент, как описано в связанном посте, все еще работает. Однако есть клиент командной строки python, который пытается реплицировать интерфейс Web + Java поверхsnx
клиента, и этот пост посвящен настройке его работы.Во-первых,
snxvp
установленное изpython pip
не работает. На https://github.com/agnis-mateuss/snxvpn имеется обновленная исправленная версия , в которой есть несколько полезных исправлений, в том числе опция игнорирования неподписанных и / или просроченных сертификатов, и что более интересно, совместимость с python2 и python3.Кроме того, все URL-адреса
snxconnect.py
должны быть изменены сsslvpn/
``.Итак, пошаговые инструкции примерно такие:
1) Во-первых, установка
snx
установки:Если в VPN, чтобы получить установочный файл, выполните:
В противном случае вам придется получить его из веб-интерфейса, как описано в связанном ответе.
Для Debian вам может понадобиться:
Мне пришлось установить следующее:
Запустите тогда:
Теперь у вас будет
/usr/bin/snx
32-битный клиентский двоичный исполняемый файл. Проверьте, отсутствуют ли какие-либо динамические библиотеки с:Вы можете перейти к следующим пунктам, когда все зависимости удовлетворены.
Не уверен, если вам нужно запустить
snx -s CheckpointURLFQDN -u USER
перед использованиемsnxconnect
, чтобы подпись VPN была сохранена на/etc/snx/USER.db
.2) Теперь у нас есть
snxconnect
утилита python. Такая программа пытается эмулировать веб-интерфейс, и что более интересно, ей не требуется Java для аутентификации.Итак, чтобы установить и настроить
snxconnect
, запустите от имени пользователя root:, затем сделайте от имени root для python3: (рекомендуется)
, или вместо этого сделайте от имени root для python2:
3) После его установки вы можете запускать как непривилегированный пользователь:
Если все прошло нормально, он запросит пароль, а затем отобразит:
Если у вас возникают проблемы с получением этого сообщения, и вместо этого вы получаете несколько раз подряд сообщение: «Неожиданный ответ, попробуйте еще раз», выполните метод Firefox, а затем правильно отключите и выйдите из системы, подождите пару минут, прежде чем пытаться выполнить
snxconnect
команда снова.4) Файл cookie (s) будет создан в ~ / .snxcookies после успешного использования.
После установки VPN вы можете проверить
ip address
или уifconfig
вас теперь естьtunsnx
интерфейс:ip route
покажет вам также новые маршруты, проходящие черезtunsnx
интерфейс.5) Для закрытия / отключения VPN, когда вы можете остановить / убить
snxconnect
, лучший и официальный способ - ввести команду:Кроме того, я также узнал:
snxconnect
кажется, ведет себя лучше при отключении предыдущего VPN-подключения и выходе из официального веб-интерфейса, если есть какая-то странная проблема (попробуйте сделать,snx -d
чтобы увидеть, если он дает тот же результат);snx
чтобы владеть им, какsnxconnect
говорит сsnx
ним;snxconnect
/snx
обрабатывается как виртуальный хост, и поэтому вы не можете напрямую использовать IP-адрес VPN;snx_install.sh
скрипта;python2
качестве компромисса для меньшего пространства, однако, поскольку python2 постепенно сокращается,snxconnect
в ближайшем будущем он может его не поддерживать;/sslvpn
строки, поскольку мои URL-адреса не начинаются с/sslvpn
. Я бы проверил ваш конкретный случай. Я абсолютно не знаю, связано ли наличие этой строки в коде со старой версией, хотелось бы получить обратную связь;snxconnect
имени хоста CheckPoint должно быть точное имя, которое веб-интерфейс показывает вам после аутентификации, поскольку это веб-виртуальный хост. В противном случае вам не удастся установить VPN;snx
использовании файл с подписью сервера VPN / Checkpoint будет создан по адресу/etc/snx/USER.db
;snxconnect
какsnx
один, не поддерживает его.источник
-MC yes
кsnxconnect
команде , чтобы получить его на работу в моем случае. Работает как шарм сейчас, большое спасибо за это, Руи!