Описание утилиты make_inst

Вызов утилиты make_inst.exe должен происходить из каталога административного пакета и с правами администратора. В противном случае будет выдано сообщение об ошибке. Утилита имеет обязательные опции и необязательные, которые заключены в квадратные скобки.

make_inst.exe -o SFX_file_path -l LSP_file_path

при использовании Preshared_Key указываются опции:

-kn Preshared_key_name{-kv Preshared_key_val|-kvf file_path_Preshared_key_val}

 

при использовании сертификатов указываются опции:

для СА сертификата:

-c CA_file_path

[-capwd CA_storage_password]|[-capwdf file_path_CA_storage_password]

[-caidx CA_object_index]

 

для локального сертификата:

-u USER_cert_file_path

{[-certpwd USER_cert_storage_password]|[-certpwdf file_path_USER_cert_storage_password]}

[-certidx USER_cert_object_index]

[-uc USER_cert_container_name]

{[-up USER_cert_container_password]|[-ufp file_path_USER_cert_container_password]}

 

для сертификатов партнеров или CRL:

[-p PARTNER_cert_1_file_path [-p PARTNER_cert_2_file_path] ...]

 

для копирования контейнера с одного носителя на другой, на компьютере пользователя при инсталляции С-Терра Клиент указываются опции:

[ { -ccop copy -cs <Source_USER_cert_container_name> | -ccop import
 -cs Source_USER_cert_container_name
 [-cp Source_USER_cert_container_password]|
 [-cfp file_path_Source_USER_cert_container_password]]

 

транспортный пароль к контейнеру (используется вместо опций -cp и -cfp).

[-uatp <Transport_Password>]|[-uaftp <file_path_Transport_Password>]

 

для проверки соответствия сертификата пользователя и секретного ключа на компьютере администратора, для копирования контейнера в инсталляционный файл указываются опции:

[-chksecret {on | off}]

[-uac USER_cert_container_name_ADMIN]

{[-uap USER_cert_container_password_ADMIN]|[-uafp file_path_USER_cert_container_password_ADMIN]}

[-ucpkgcopy {on | off}]

 

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

[-intern {on | off}] (default: off)

 

локальные настройки:

[-q {basic | normal | silent}] (default: basic)

[-d {passall | passdhcp | dropall}] (default: passall)

[-f {ddp | passdhcp}] (default: ddp)

[-s {emerg |alert |crit |err |warning |notice |info |debug}] (default: notice)

[-t <SYSLOG_server_IP>] (default: 127.0.0.1)

[-y <log_facility>] (default: log_local7)

[-a "<Additional_cmd_msiexec_params>"]

[-lic <license_file_path>]

[-nilogin {on | off}] (default: off)

[-login_protection { on | off }] (default: on)

[-local_mgmt { on | off }] (default: off)

[-token {on | off}] (default: off)

[-vpnproxy_ini <vpnproxy_ini_path>]

[-ikecfgif_count <ikecfgif_count>] (1-10; default: 1)

[-ext_rnd_init_src <external_RND_init_src_container_name> { -ext_rnd_init_src_passwd <external_RND_init_src_container_password> | -ext_rnd_init_src_f_passwd <file_path_external_RND_init_src_container_password> } ]

где:

-o SFX_file_path

SFX_file_path - имя создаваемого инсталляционного SFX-файла. Обязательная опция. Имя файла подразумевает и путь к этому файлу.

-l LSP_file_path

LSP_file_path - имя файла, содержащего LSP. Имеет текстовый формат. Обязательная опция, если не задан режим логина с использованием пользовательского токена (-token on).

Использование предопределенного ключа

-kn Preshared_key_name

Preshared_key_name - имя предопределенного ключа. Обязательная опция, если используются предопределенные ключи. Может быть задано несколько таких ключей (см. Примечание 1). Предопределенные ключи или сертификаты обязательно должны быть заданы. Можно задавать и то, и другое.

-kv Preshared_key_val

Preshared_key_val - значение предопределенного ключа. Например, -kv 12345 или - kv "Test preshared key" (кавычки в ключ не входят). Может быть задано несколько таких ключей (см. Примечание 1).

-kvf file_path_Preshared_key_val

file_path_Preshared_key_val - имя файла, содержащего значение предопределенного ключа на компьютере администратора. Если используется предопределенный ключ, то обязательно должна быть задана опция -kv либо -kvf. Может быть задано несколько таких ключей (см. Примечание 1).

Использование СА сертификата

-c CA_file_path

CA_file_path - имя файла с CA-сертификатом на компьютере администратора. Обязательная опция, если используются сертификаты.

-capwd CA_storage_password

CA_storage_password - пароль к хранилищу с СА сертификатом (если требуется, например, для файла в формате PKCS#12). Ситуации - отсутствие пароля (пароль не задан) и пустой пароль ("") - не различаются.

-capwdf file_path_CA_storage_password

file_path_CA_storage_password - имя файла, содержащего пароль к хранилищу с СА сертификатом. В этой и других подобных опциях пароль читается из файла как текстовая строка. Если файл содержит несколько строк, читается только первая из них и воспринимается как пароль. Нельзя указывать одновременно с опцией capwd.

-caidx CA_object_index

CA_object_index - порядковый номер СА сертификата в данном хранилище. Нумерация начинается с 1. Значение по умолчанию - 1.

Использование локального сертификата

-u USER_cert_file_path

USER_cert_file_path - имя файла с локальным сертификатом пользователя на компьютере администратора. Если опция не задана - берется хранилище с СА сертификатом. В этом случае порядковые номера СА и локального сертификатов в хранилище (caidx и certidx) должны различаться.

-certpwd USER_cert_storage_password

USER_cert_storage_password - пароль к хранилищу с локальным сертификатом (если требуется, например, для файла в формате PKCS#12). Ситуации - отсутствие пароля (пароль не задан) и пустой пароль ("") - не различаются. Используется, если задана опция -u.

-certpwdf file_path_USER_cert_storage_password

file_path_USER_cert_storage_password - имя файла, содержащего пароль к хранилищу с локальным сертификатом. Пароль читается из файла как текстовая строка. Если файл содержит несколько строк, читается только первая из них и воспринимается как пароль. Нельзя указывать одновременно с опцией certpwd.

-certidx USER_cert_object_index

USER_cert_object_index - порядковый номер локального сертификата в хранилище. Нумерация начинается с 1. Значение по умолчанию - 1.

Если не задана опция -u, используется одно и тоже хранилище для СА и локального сертификатов. В этом случае порядковые номера СА и локального сертификатов в хранилище должны различаться.

-uc USER_cert_container_name

USER_cert_container_name - имя контейнера с секретным ключом на компьютере пользователя. Здесь же указывается и носитель информации, на котором хранится контейнер. Не больше 60 символов (см. Примечание 2 об именах контейнеров).

Опция не указывается, если используется комбинация intern on и ucpkgcopy on. В противном случае, опция является обязательной, если используются сертификаты.

Если задана опция intern on и не задана ucpkgcopy on, то данная опция -uc будет указывать на файл в формате PKCS#12 с секретным ключом на компьютере пользователя.

-up USER_cert_container_password

USER_cert_container_password - пароль к контейнеру с секретным ключом. Не больше 40 символов. Параметр актуален, если не задана опция -ufp. Пароль (в том числе и пустой) должен быть указан обязательно. В случае если контейнер находится на токене, пароль контейнера и PIN токена совпадают.

-ufp file_path_USER_cert_container_password

file_path_USER_cert_container_password - имя файла, содержащего пароль к контейнеру, на компьютере администратора. Не больше 40 символов. Пароль читается из файла как текстовая строка. Если файл содержит несколько строк, то читается только первая строка и воспринимается как пароль. Нельзя задавать вместе с опцией -up.

Указание сертификатов партнеров, промежуточного СА сертификата

-p PARTNER_cert_i_file_path

PARTNER_cert_i_file_path - путь к сертификату партнера или промежуточному CA-сертификату, который будет положен в базу локальных настроек продукта С-Терра Клиент при инсталляции. Можно задать несколько таких опций (в базу сертификаты будут положены в порядке перечисления данных опций). Необязательный параметр. Рекомендуется использовать в случаях, когда присутствуют проблемы с передачей сертификатов по протоколу IKE и LDAP.

Проверка соответствия сертификата пользователя и секретного ключа на компьютере администратора

-chksecret {on | off}

включение/выключение проверки соответствия сертификата пользователя и секретного ключа. По умолчанию - значение off. Такая проверка осуществляется на компьютере администратора и возможна только при наличии на нем контейнера с секретным ключом. Проверяется контейнер, указанный в опции -uac.

-uac USER_cert_container_name_ADMIN

USER_cert_container_name_ADMIN - имя контейнера на компьютере администратора. Эта опция используется только при включенной опции chksecret.

В случае указанной опции -intern on  данный параметр указывает на файл в формате PKCS#12, содержащий секретный ключ, на компьютере администратора.

-uap USER_cert_container_password_ADMIN

USER_cert_container_password_ADMIN - пароль к контейнеру, указанному в опции -uac. По умолчанию - пароль пустой.

-uafp file_path_USER_cert_container_password_ADMIN

file_path_USER_cert_container_password_ADMIN - имя файла на компьютере администратора, в котором записан пароль к контейнеру, указанному в опции -uac. Нельзя задавать вместе с опцией -uap.

Копирование контейнера с сертификатом в инсталляционный файл

-ucpkgcopy {on | off}

Включен/выключен режим копирования сертификатного контейнера в инсталляционный файл. Значение по умолчанию - off.

Если задано on, то контейнер, заданный в -uac, копируется в инсталляционный файл. При установке файла на машине пользователя, данный контейнер копируется в контейнер, указанный в ключе -uc.

Внимание!

Если используется режим международных сертификатов (-intern on), то секретный ключ, хранящийся в файле формата PKCS12 из хранилища, заданного в -uac, копируется в инсталляционный файл. При установке на компьютере пользователя данный секретный ключ переносится в базу локальных настроек С-Терра Клиент.

Копирование контейнера с одного носителя на другой при инсталляции
С-Терра Клиент

-ccop {copy | import} d

Выбор операции копирования или импорта сертификатного контейнера. Обязательный параметр, если используется опция -cs.

-cs Source_USER_cert_container_name

При указании этой опции будет произведено копирование контейнера с именем Source_USER_cert_container_name, размещенного на компьютере пользователя, в контейнер с именем USER_cert_container_name, которое указано в опции -uc, при инсталляции С-Терра Клиент на компьютере пользователя. Опция -cs задается, если используется сертификат. Обязательно должен быть выставлен вместе с -ccop. В зависимости от этого ключа различается смысл параметра:
   -ccop copy - в -cs <Source_USER_cert_container_name> - задается имя исходного контейнера,
   -ccop import - в -cs <Source_USER_cert_container_file_path> - задается путь к файлу (на машине пользователя), из которого импортируется контейнер.

Нельзя задавать вместе с -ucpkgcopy on.

-cp Source_USER_cert_container_password

Source_USER_cert_container_password - пароль к контейнеру с именем, указанным в опции -cs, который будет копироваться при инсталляции. Если пароль отсутствует или пустой, то опция -cp не задается. По умолчанию - пароль пустой. Нельзя задавать, если задана опция -uatp или -uaftp.

-cfp file_path_Source_USER_cert_container_password

file_path_Source_USER_cert_container_password - имя файла, в котором записан пароль к контейнеру, указанному в опции -cs. Нельзя задавать одновременно с опцией -cp. Нельзя задавать, если задана опция -uatp или -uaftp.

Транспортный пароль к контейнеру

-uatp Transport_Password

Transport_Password - транспортный пароль к контейнеру. Должен быть непустым. Имеет смысл при операциях с контейнером (копирование или импорт). А также при инициализации ДСЧ из внешнего источника (-ext_rnd_init_src). Используется вместо опций -cp и -cfp. Если транспортный пароль используется совместно как при операциях с контейнером, так и при инициализации ДСЧ из внешнего источника, то он должен быть один и тот же.

-uaftp file_path_Transport_Password

file_path_Transport_Password - имя файла, в котором записан транспортный пароль к контейнеру. Транспортный пароль должен быть не пустым. Имеет смысл при операциях с контейнером (копирование или импорт). А также при инициализации ДСЧ из внешнего источника (-ext_rnd_init_src). Используется вместо опций -cp и -cfp. Если транспортный пароль используется совместно как при операциях с контейнером, так и при инициализации ДСЧ из внешнего источника, то он должен быть один и тот же.

Режим международных сертификатов

-intern {on | off}

Включение/выключение режима использования международных (не ГОСТовых) сертификатов. При использовании международных сертификатов логика работы опций, связанных с сертификатами, может существенно меняться (см. описание соответствующих опций).

Локальные настройки

-q {basic | normal | silent}

тип инсталляции Продукта С-Терра Клиент:

basic - неинтерактивная установка с запросом на инсталляцию. Вариант по умолчанию.

normal - интерактивная установка (в диалоговом режиме) с демонстрацией Лицензии и другими окнами.

silent - неинтерактивная установка без запросов. Стартует сразу после запуска EXE-файла без дополнительных запросов.

-d {passall | passdhcp}

Default Driver Policy:

passall - пропускать все пакеты. Вариант по умолчанию

passdhcp - ничего не пропускать, кроме DHCP-пакетов

dropall - не пропускать трафик.

-f {ddp | passdhcp}

Logoff policy - специальная политика:

ddp - Default Driver Policy. Вариант по умолчанию

passdhcp - ничего не пропускать, кроме DHCP-пакетов.

-s log_severity

log_severity ={EMERG|ALERT|CRIT|ERR|WARNING|NOTICE|INFO|DEBUG}

По умолчанию -  NOTICE. Опция задает общий уровень важности протоколируемых событий, ее использование описано в главе "Протоколирование событий".

-t SYSLOG_server_IP

SYSLOG_server_IP - IP-адрес SYSLOG сервера, на который будут посылаться сообщения о протоколируемых событиях. По умолчанию - 127.0.0.1 (сообщения будут присылаться на локальный хост).

-y log_facility

log_facility =log_local 0-7. По умолчанию -log_local7.

-a "Additional_cmd_msiexec_params"

"Additional_cmd_msiexec_params" - дополнительные параметры запуска WinInstaller. Например, альтернативная инсталляционная папка, настройки лога Windows Installer и т.п. Эти параметры можно посмотреть по ссылке https://msdn.microsoft.com/ru-ru/library/windows/desktop/aa367988%28v=vs.85%29.aspx

/l* C:\Client\install_log_file.txt - протоколирование событий в файл C:\Client\install_log_file.txt при инсталляции С-Терра Клиент (рекомендуется при режиме silent).

INSTALLDIR=каталог установки Продукта - переопределение каталога. Указание каталога, несуществующего на компьютере пользователя, приведет к ошибке инсталляции.

Можно часть текста заключить в символы % (процент) и она будет рассматриваться как имя переменной окружения. И эта часть текста будет заменяться на значение переменной окружения (значения переменных окружения можно просмотреть командой set). Если переменная окружения отсутствует, в команде остается исходный текст.

Поддерживается специальная переменная окружения SfxDir - полный путь к папке, в которую распакованы данные. Таким образом, последовательность символов %SfxDir% заменяется на полный путь к папке, в которую распакованы данные.

REBOOT=F - обязательно запрашивать перезагрузку системы в конце инсталляции, даже если он не инициируется инсталлятором.

REBOOT=S - отключить запрос на перезагрузку системы в конце инсталляции. Не блокировать рестарт в случае ForceReboot action.

REBOOT=R - полностью отключить все запросы на перезагрузку системы, включая ForceReboot action. Используется для установки нескольких Продуктов и/или выполнения дополнительных действий после инсталляции. После этого перезапустить систему вручную или с помощью сторонних инструментальных средств.

MAX_SERVICE_START_TIMEOUT= … - время (в секундах) ожидания старта VPN сервиса (vpnsvc). Максимальное значение - 600 секунд. Значение по умолчанию - 120. Можно использовать для предотвращения появления сообщений об ошибке связи с сервисом на этапе логина для медленных и/или находящихся под сильной нагрузкой систем.

AGENT_DB_REMOVE=1 - автоматически (без дополнительных запросов) будет удаляться база локальных настроек при установке или при удалении Продукта (рекомендуется использовать для режима инсталляции silent).

AGENT_DB_REMOVE=0 - база локальных настроек удаляться не будет, запросы пользователю выдаваться не будут. По умолчанию (параметр пустой) - пользователю выдается запрос на удаление базы локальных настроек.

DISABLE_ANTIVIRUS_WARNING=1 - при инсталляции не будет показываться предупреждение 25036 (о необходимости отключения антивирусных программ).

Внимание!

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

 

REBOOT_REQUIRED=1 - принудительно инициировать запрос на рестарт системы в конце инсталляции. Параметр обычно выставляется автоматически (при необходимости).

DISABLE_CALL_LOGIN=1 - в конце инсталляции логин не запустится. Устанавливать параметр имеет смысл только для интерактивного логина (NON_INTERACTIVE_LOGIN=0).

GUI_BIO_RNG=1 - в настройках СКЗИ будет прописан GUI-вариант «биологической» инициализации ДСЧ (при инициализации ДСЧ надо будет нажимать на круг, меняющий свое местоположение на экране). По умолчанию - консольный вариант (нужно нажимать запрашиваемые клавиши).

VPNPROXY_DEFAULT_TCP_PORT= параметр DefaultTCPPort секции [Internal NAT] файла vpnproxy.ini. Допустимо задавать как для стандартного файла vpnproxy.ini, так и для заданного в make_inst пользовательского файла vpnproxy.ini (опция -vpnproxy_ini). Во втором случае данная настройка будет действовать для пользовательского файла. Допустимые значения - от 1 до 65535. Значение по умолчанию - 8080.

 

Внимание!

Для успешного создания TCP-соединения партнёр должен слушать указанный TCP-порт. Для этого на стороне партнера в файле vpnproxy.ini, в секции HTTP должен быть задан параметр LocalPort, совпадающий с параметром DefaultTCPPort.

 

TOKEN_TYPE=etoken или rutoken- тип токена. 

TOKEN_LIB_PATH =полный путь к библиотеке токена. Можно использовать стандартное форматирование Windows Installer, например [SystemFolder]token_dll_name.dll ([SystemFolder] - полный путь к системному каталогу).

 

Внимание!

Обязательно требуется вместе выставлять оба параметра (если выставить только один, он игнорируется). Данные настройки изменяют содержимое файлов skzi.conf и s_tknskills.ini, находящихся в корневой папке продукта.

 

Настройки по умолчанию выполнены для токена JaCarta:

TOKEN_TYPE=etoken TOKEN_LIB_PATH=[SystemFolder]jcpkcs11-2.dll

Если не подходит вариант по умолчанию, предлагается использовать один из следующих вариантов:

TOKEN_TYPE=etoken TOKEN_LIB_PATH=[SystemFolder]eTpkcs11.dll dll - для eToken PRO 72K 

TOKEN_TYPE=rutoken TOKEN_LIB_PATH=[SystemFolder]rtPKCS11ECP.dll - для Рутокен.

IKECFGIF_COUNT=количество создаваемых IKECFG-интерфейсов (ikecfgif). По умолчанию - 1. Не может быть 0. Рекомендуется задавать с помощью опции make_inst  -ikecfgif_count.

TRANSPORT_PWD_SET=1  - при установке потребуется транспортный пароль. Он будет получен либо из файла, лежащего рядом с дистрибутивом, либо запрошен интерактивно через GUI. Рекомендуется задавать с помощью опции make_inst -uatp  или  -uaftp. 

TRANSPORT_PWD_SAVE=1  - после успешного копирования или импорта контейнера транспортный пароль сохраняется в реестре:

В случае 32-битных Windows:

[HKEY_LOCAL_MACHINE\SOFTWARE \VPN Agent]

"TP"="<транспортный_пароль>"

В случае 64-битных Windows:

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\VPN Agent]

"TP"="<транспортный_пароль>"

EXT_RND_INIT_SRC=путь к файлу с внешним источником ДСЧ. В качестве пароля используется транспортный пароль, если задано TRANSPORT_PWD_SET=1; или константное значение s-terra в противном случае. Рекомендуется использовать опцию make_inst -ext_rnd_init_src.

-lic license_file_path

License_file_path - имя файла с Лицензией на С-Терра Клиент на компьютере администратора. Эта опция обязательна для режимов инсталляции basic и silent. Для режима normal  эта опция необязательна:

      если ее задать, то при установке Продукта вопросы о Лицензии задаваться не будут

      если ее не задать, то при установке Продукта появится стандартное окно для ввода Лицензии.

В текстовом файле данные Лицензии должны быть записаны в виде:

[license]

CustomerCode=NNNN

ProductCode=CLIENT/CLIENTB

LicenseNumber=xxxxxxxxxx

LicenseCode=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx

-nilogin {on | off}

Включение/выключение неинтерактивного режима логина пользователя в Продукт С-Терра Клиент:

on - включен неинтерактивный режим

off  - выключен неинтерактивный режим логина, работает интерактивный режим.

При неинтерактивном режиме логина при входе пользователя в систему, производится попытка логина пользователя в Продукт с пустым паролем (в качестве пароля используется пустая строка). При таком успешном логине в Продукт окно с запросом пароля не выводится. При неуспешном логине - Продукт ведет себя как при интерактивном логине (будет выдано окно запроса пароля).

-login_protection {on | off}

Включение/выключение функциональности по защите до логина в ОС. Значение по умолчанию - on.

-local_mgmt {on | off}

Включение/выключение возможности изменять настройки Продукта конечным пользователем. Значение по умолчанию - off  (пользователь может менять только пароль, уровень логирования, добавлять CRL и сертификаты партнеров, перезагружать локальную политику безопасности).

-token {on | off} 

Использование/неиспользование пользовательского токена для логина в Продукт С-Терра Клиент. Значение по умолчанию - off.

-vpnproxy_ini <vpnproxy_ini_path>

Установить пользовательский файл vpnproxy.ini.

vpnproxy_ini_path -- путь к файлу.

-ikecfgif_count <ikecfgif_count>

ikecfgif_count -- количество IKECFG-интерфейсов, которые требуется установить. Должно быть больше 0 (от 1 до 10). По умолчанию - 1.

-ext_rnd_init_src <external_RND_init_src_container_name>

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

Внимание!

Для каждого пользователя должен быть свой контейнер с ключевой парой.

Основной сценарий - использование вместе с -ucpkgcopy on.

Обычно используется в сочетании с выставлением транспортного пароля. Если транспортный пароль не используется, то контейнер кладется в инсталляционный пакет с константным паролем s-terra.

-ext_rnd_init_src_passwd <external_RND_init_src_container_password>

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

 

Внимание!

Может отличаться от пароля, под которым данный контейнер переносится в инсталляционный пакет (включая, но не ограничиваясь транспортным паролем).

 

-ext_rnd_init_src_f_passwd <file_path_external_RND_init_src_container_password>

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

 

Внимание!

Если задается несколько предопределенных ключей, то опции с именем ключа и самим ключом (-kn и -kv или -kvf) должны следовать одна за другой, т.е. опции -kn и -kv (-kvf), расположенные рядом относятся к одному и тому же предопределенному ключу.

 

Пример правильного задания ключей:

-kn key1 -kv value1 -kn key2 -kvf file_with_value2

Пример неправильного задания ключей (два имени и два значения расположены подряд):

-kn key1 -kn key2 -kv value1 -kvf value2 - НЕПРАВИЛЬНО!!!

 

Внимание!

Имя контейнера имеет следующий формат:

system|user::<ключевой носитель>://имя контейнера

system или user - ключевое слово, определяющее доступность контейнера (system - контейнер доступен всем пользователям, user - индивидуальный контейнер пользователя),
ключевой носитель может принимать значения:

file_p15 - контейнер будет создан на локальной файловой системе (формат контейнера PKCS#15),

etoken_p15 - контейнер будет создан на внешнем носителе, подключенном по интерфейсу PKCS#11 (формат контейнера PKCS#15).

Например: user::file_p15://ContName1