Использование CheckPoint VPN SSL Network Extender CLI с сертификатом

Синтаксис $ (cmd) захватывает стандартный вывод из cmd (без завершающих символов новой строки).

Итак, все, что вам нужно сделать, это заставить getweek выводить информацию:

#! /bin/sh -
date +%V # or %U or %W

date выводит номер недели на свой стандартный вывод, который он наследует от sh , который в случай weeknum = $ (getweek) устанавливается для канала или пары сокетов оболочкой, на другом конце которой оболочка считывает этот вывод для сохранения в переменной weeknum .

Вы также можете вернуть номер недели в статусе выхода:

#! /bin/sh -
exit "$(date +%W)"

Который вы получите с помощью:

getweek
weeknum=$?

, но я бы не советовал этого делать. Статус выхода должен быть зарезервирован для сообщений об ошибках или ограничен значениями истина / ложь.

Обычно выше, если есть ошибка (при разветвлении процесса, при выполнении date или sh ) или процесс завершен, вы получите ненулевой статус выхода. который не следует рассматривать как номер недели .

1
04.12.2018, 15:43
3 ответа

Используя MacOS, я загружал/использовал последний официальный клиент Check Point для Mac OS, который активно поддерживается CheckPoint, вместо использования Docker.

Пользуюсь клиентом Checkpoint в Мохаве уже пару месяцев, и, вопреки моему опыту в начале года, в High Sierra, где он все время давал сбои, сейчас он довольно стабилен.

Что касается запуска VPN-клиента Linux CheckPoint/snxв Docker, он не будет работать.

Подпрограммы клиента VPN snx:

  • проверка наличия ядра/загружаемого модуля ядра tun;
  • загрузить/встроить модуль ядра tun , если он не загружен;
  • создать и использовать получившийся tunsnx виртуальный сетевой интерфейс;
  • управлять вашей таблицей маршрутизации;
  • отправлять трафик через виртуальный tunsnx интерфейс.

Некоторые или все эти действия не могут просто выполняться внутри контейнера Docker.

TDLRsnxвнутри Docker не будет работать. Либо используйте собственный клиент Mac, либо запустите VPN-клиент Linux snxна виртуальной машине Linux.

ПС. Я бы посоветовал ознакомиться с различиями между контейнером и виртуальной машиной.

2
27.01.2020, 23:18

Я только что подключился к SNX в образе докера, так что это возможно.

Некоторые хитрости:

  -v /lib/modules:/lib/modules \
  -v /dev:/dev \
  --cap-add=ALL \

Мой подход заключался в том, чтобы сначала заставить его работать в образе Virtualbox, затем перечислить все установленные пакеты и, наконец, установить все эти пакеты в образ докера.

Я подозреваю, что некоторые пакеты, связанные с X, необходимы, теперь пришло время обрезать изображение и угадать, какие пакеты действительно нужны.

3
27.01.2020, 23:18

Ответ Хавьера мне очень помог.

Сначала я успешно подключился к хост-компьютеру, затем попытался подключиться в контейнере.

Нужны были другие папки:

docker run -v /bin:/bin -v /lib:/lib -v /sbin:/sbin -v /usr:/usr --cap-add=ALL -it my_image bash

0
27.01.2020, 23:18

Теги

Похожие вопросы