Для каждой команды уровня администратора установлен минимальный уровень привилегий администратора. Возможные значения 1 и 15. Если команду пытается выполнить администратор с меньшим уровнем привилегий, на консоль выдается сообщение об ошибке:
% Insufficient privilege level to call this command,
а в лог выдается сообщение:
User <username> has insufficient privilege level to call command: <command>
Для администратора с уровнем привилегий 1 доступны команда configure и все команды уровня пользователя. Для администратора с уровнем привилегий 15 разрешен запуск всех команд.
Запуск сервиса безопасности |
|
start |
Выполняется запуск сервиса безопасности. Аналогично /etc/init.d/vpngate start. |
Остановка работы системы |
|
stop |
Сначала останавливается сервис безопасности, затем происходит останов ОС. |
Перезагрузка системы |
|
reboot |
Сначала останавливается сервис безопасности, затем происходит перезагрузка ОС. |
Запуск процедуры инициализации |
|
initialize |
Запуск процедуры инициализации S-Terra Gate. |
Автостарт |
|
autostart on |
Включение автостарта. В случае ошибки может быть выдано сообщение: % Failed to enable autostart. |
autostart off |
Отключения автостарта. В случае ошибки может быть выдано сообщение: % Failed to disable autostart. |
Создание пользователя |
|
Присутствуют ограничения на формат имени создаваемого пользователя: Допустимые символы: Заглавные и строчные буквы латинского алфавита. Примечание: регистр важен – заглавные и строчные буквы рассматриваются как разные символы Десятичные цифры. Символы: _ (подчеркивание), - (дефис), . (точка; есть ограничения – см. ниже), @ (коммерческая at), # (решетка). Не допускаются имена, состоящие только из одной или двух точек.
При создании пользователя с однофакторной аутентификацией существуют ограничения на формат пароля пользователя. Длина пароля должна быть не меньше 6 символов. Пароль может состоять из печатных символов ASCII: латинских букв (a-z, A-Z), цифр (0-9), знаков препинания (, . : и т.п.) и др. (@ / {} и т.п.). Пароль должен содержать как минимум одну латинскую букву и одну цифру. Один и тот же символ должен встречаться не более 2 раз. Может быть включен или отключен режим строгой проверки политики паролей (см. раздел "Настройки конфигурационного файла", "Включение и отключение строгого режима проверки политики паролей").
Создается файл со счетчиком ошибочных попыток входа в систему. Если все попытки оказываются неуспешными, для пользователя включается режим длительного ожидания ввода пароля (по умолчанию 60 минут). |
|
Создание пользователя с однофакторной аутентификацией |
|
create user <username> [1-factor] [role {administrator|user}] [password <password>] [privilege <privilege>] [config-user <config_user>] |
По команде создается новый пользователь, а также контейнер с секретным ключом на файловой системе. Публичный ключ по данной команде не сохраняется. Параметры: 1-factor – указание на однофакторную аутентификацию (по умолчанию). role – роль (администратор или пользователь), по умолчанию – пользователь. password – пароль пользователя. Можно заключить в кавычки (которые не учитываются в пароле) или задать пустой пароль как "" (две кавычки). Если пароль не задать, то он будет запрошен интерактивно с подтверждением. Пароль проверяется на соответствие политике (подробнее см. раздел "Настройки конфигурационного файла", "Включение и отключение строгого режима проверки политики паролей"). Если включен режим проверки политики паролей и выдано сообщение об ошибке нарушения политики, выполнение команды прерывается. privilege – уровень привилегий. Задается только для администратора. Возможные значения: 1 (ограничения на запуск команд) или 15 (разрешен запуск всех команд). Значение по умолчанию – 15. config-user – пользователь, от имени которого будет выполняться вход в cisco-like консоль по команде configure. Имеет смысл указывать только для администратора. По умолчанию настройка отсутствует – по команде configure будет вызываться стандартная утилита login операционной системы (ввод логина и пароля пользователя ОС). |
Создание пользователя с двухфакторной аутентификацией |
|
create user <username> 2-factor use-container <container> [role { administrator | user }] [privilege <privilege>] [config-user <config_user>] [password <password>] |
По команде создается новый пользователь, из указанного контейнера извлекается публичный ключ и сохраняется в файл: /var/cspvpn/.auth_login_public_key.<username>. Параметры: 2-factor – обязательное указание на двухфакторную аутентификацию; Последующие опции можно задавать в произвольном порядке. role – роль (администратор или пользователь), по умолчанию – пользователь; use-container <container> – имя существующего контейнера (обязательный параметр). При выполнении команды требуется наличие данного контейнера; password <password> – пароль на контейнер, заданный в опции use-container. Можно заключить в кавычки, которые не учитываются в пароле. Можно задать пустой пароль как "" (две кавычки). Если не указать пароль, то он будет запрошен интерактивно. privilege – уровень привилегий. Задается только для администратора. Возможные значения: 1 (ограничения на запуск команд) или 15 (разрешен запуск всех команд). Значение по умолчанию – 15. config-user – пользователь, от имени которого будет выполняться вход в cisco-like консоль по команде configure. Имеет смысл указывать только для администратора. По умолчанию настройка отсутствует –- по команде configure будет вызываться стандартная утилита login операционной системы (ввод логина и пароля пользователя ОС). |
create user <username> |
Пользователю интерактивно задается ряд вопросов (на любом этапе можно прервать выполнение команды с помощью Ctrl+C): Одно- или двух-факторная аутентификация. Роль пользователя (администратор или пользователь). Для двухфакторной аутентификации запрашивается имя существующего контейнера. Если была выбрана роль администратора: Запрашивается уровень привилегий. Возможные значения: 1 (ограничения на запуск команд) и 15 (разрешен запуск всех команд). Запрашивается имя пользователя, от имени которого будет выполняться вход в cisco-like консоль по команде configure – config user. Для однофакторной аутентификации запрашивается пароль пользователя с подтверждением. Для двухфакторной аутентификации запрашивается существующий пароль пользователя. Далее проверяется соответствие существующего контейнера и пароля к нему. |
Удаление пользователя |
|
remove user <username> |
Команда предназначена для удаления пользователя. Удаляются настройки пользователя из файла /opt/VPNagent/etc/auth_login.ini. Если удаляется пользователь с однофакторной аутентификацией, то удаляется и контейнер, связанный с пользователем. Если удаляется пользователь с двухфакторной аутентификацией, то удаляется и файл с публичным ключом, а контейнер, связанный с пользователем, не удаляется. Удаляются файлы со счетчиком ошибочных попыток входа в систему и с отметкой времени создания или последней смены пароля пользователя. |
Для смены пароля пользователя необходимо ввести старый (текущий) пароль этого пользователя. Если это по каким-либо причинам невозможно, следует удалить данного пользователя, а затем создать нового. Можно с тем же самым именем. После первого ввода пароля происходит его проверка на соответствие политике (см. "ограничения на формат пароля пользователя"). При вводе пароля можно нажать на Ctrl+C для отмены операции. Для пользователей с однофакторной аутентификацией время смены пароля записывается в файл. |
|
change user password |
Сменить пароль текущего пользователя. |
change user password <username> |
Сменить пароль произвольного пользователя. Данная команда может быть выполнена только администратором с максимальным уровнем привилегий. |
Разблокировка пользователя |
|
unblock user <username> |
Разблокировка пользователя. Количество оставшихся попыток входа в систему для данного пользователя выставляется в начальное значение (10). Команда используется для: · заблокированного штатным образом пользователя; · пользователя, для которого зафиксирован неправильный формат файла, хранящего счетчик допустимого количества попыток входа в систему (“BLOCKED (corrupted data)”); · заблокированного пользователя (имеет смысл для увеличения количества оставшихся попыток входа в систему для данного пользователя). |
Блокировка пользователя |
|
block user <username> |
Принудительная блокировка пользователя. Невозможно заблокировать самого себя. В этом случае будет выдано сообщение: % You can't block current user |
Настройки таймера неактивности |
|
session idle timeout <timeout> |
Установка таймера неактивности. Параметр: <timeout> – время в минутах (1-1440) отсутствия активности пользователя, по истечении которого происходит автоматический выход из консоли разграничения доступа. Значение по умолчанию – 10. |
session idle timeout disable |
Отключение таймера неактивности. |
Определение типа терминала |
|
terminal terminal-type <terminal-type> |
Выставить тип терминала. Параметр: <terminal-type> – тип терминала. Например: linux, vt100, xterm и т.п. |
terminal no terminal-type |
Вернуться к типу терминала, выставленному на момент запуска консоли разграничения доступа. |
Просмотр глобальных настроек |
|
show global-parameters |
Посмотреть текущие настройки таймера неактивности. |
Выдача информации по текущему пользователю |
|
show user |
По команде выдается следующая информация: User: имя пользователя. Role: администратор (admin) или простой пользователь (user). Privilege level: уровень привилегий (только для администратора): 1 или 15. Container: имя контейнера, с помощью которого аутентифицируется пользователь. Public Key File: файл с публичным ключом (только для двухфакторной аутентификации). Status: Штатный пользователь: Status: unblocked (<n> attempt(s) left) где <n> – количество оставшихся попыток логина пользователя до включения режима длительного ожидания ввода пароля Пользователь заблокирован администратором: Status: BLOCKED Для пользователя включен режим длительного ожидания ввода пароля из-за исчерпания допустимого количества попыток: Status: LONG WAIT before login (too many attempts) Для пользователя включен режим длительного ожидания ввода пароля из-за отсутствия файла с количеством неудачных попыток: Status: LONG WAIT before login (absent data) Для пользователя включен режим длительного ожидания ввода пароля из-за неправильного формата файла или из-за системных ошибок: Status: LONG WAIT before login (corrupted data) Config User: пользователь, от имени которого будет выполняться вход в cisco-like консоль по команде configure. Возможно только для администратора. Может отсутствовать. Password valid for: или Password: expired – информация об оставшемся времени, в течение которого можно не менять пароль пользователя (только для пользователей с однофакторной аутентификацией). Допустимые варианты: Меньше часа: Password valid for: less than an hour Меньше суток: Password valid for: less than a day От суток до полутора: Password valid for: a day Больше полутора суток: Password valid for: <n> days где <n> – количество оставшихся суток (округление в ближайшую сторону; например 15 days обозначает промежуток от 14 суток 6 часов до 15 суток 5 часов 59 минут 59 секунд). Время действия пароля исчерпано: Password: expired (При следующем логине пользователя будет выдан запрос на смену пароля.) Параметр не показывается для пользователей с двухфакторной аутентификацией и пользователей со специальным маркером об отсутствии необходимости смены пароля. |
Вывод информации о произвольном пользователе |
|
show user <username> |
Выдается информация о пользователе <username>. Формат вывода аналогичен выводу команды show user. Если ввести несуществующего пользователя, выдается сообщение об ошибке: % User <username> is absent |
Вывод информации обо всех пользователях |
|
show all-users |
Выдается информация о всех пользователях. Формат вывода аналогичен выводу команды show user |
Выдача версии продукта |
|
show version |
Предназначена для просмотра информации об установленном продукте. Аналогично запуску утилиты /opt/VPNagent/bin/ver_show |
Выдача информации о текущей конфигурации |
|
show config |
Предназначена для просмотра текущей конфигурации. Аналогично запуску утилиты /opt/VPNagent/bin/lsp_mgr show |
Выдача текущей информации о статусе защиты |
|
show status |
Предназначена для просмотра информации обо всех соединениях IPsec SA, ISAKMP SA и их состоянии, и о количестве IKE обменов. Аналогично запуску утилиты /opt/VPNagent/bin/sa_mgr show |
Вход в cisco-like консоль |
|
Осуществляется запуск cisco-like консоли (интерфейс командной строки Cisco-like). · Если для текущего пользователя присутствует в настройках параметр config-user, то запуск cisco-like консоли осуществляется от имени config-user: Если заданный в настройках пользователь, под которым должен производиться вход в конфигурационный режим, отсутствует в ОС или его Shell отличается от cisco-like консоли, то выдается сообщение об ошибке: % Error: configuring is inaccessible for current user. Check the 'config_user' setting также в syslog выдается сообщение: % Error: configuring is inaccessible for user <username> где <username> – имя пользователя консоли разграничения доступа. Если настройка config-user корректна, то на консоль выдается сообщение: Entering cs_console... Далее запускается cisco-like консоль. · Если для текущего пользователя консоли разграничения доступа отсутствует в настройках параметр config-user, то будет запрошен логин и пароль пользователя ОС. Изначально для входа в консоль установлен логин – cscons, пароль – csp.
При выходе из cisco-like консоли выдается сообщение: Leaving cs_console... При необходимости аварийного завершения выполнения cisco-like консоли можно использовать сочетания клавиш CTRL+^ (CTRL+SHIFT+6) или CTRL+|. При необходимости аварийного завершения выполнения login можно использовать сочетания клавиш CTRL+^ (CTRL+SHIFT+6) или CTRL+|.
|
|
Вызов внешнего приложения |
|
run <shell_cmd_to_execute> |
Команда позволяет вызвать внешнее приложение При необходимости аварийного завершения выполнения приложения можно использовать сочетания клавиш CTRL+^ (CTRL+SHIFT+6) или CTRL+|. |
Выход из консоли разграничения доступа |
|
exit |
Приводит к перезапуску консоли разграничения доступа и запросу имени пользователя. |
Вход в режим настройки системы |
|
system |
Команда необходима для начальной настройки системы и в аварийных ситуациях. В остальных случаях рекомендуется пользоваться командой configure. |
Операции с файлами |
|
В командах работы с файлами путь к файлу предваряется префиксом, далее обозначается как <fs-prefix>. Подробнее смотрите Примечание 1. В некоторых командах работы с файлами запрашивается подтверждение пути к файлу. Например: Destination file path [<corrected-file-path>] ? Подробнее смотрите Примечание 2. |
|
dir |
Вывод содержимого директории по умолчанию. Аналогично команде dir file. |
dir <fs_prefix> |
Вывод содержимого директории по умолчанию для конкретного префикса. |
dir <fs_prefix>:<file-path> |
Вывод содержимого другой директории или информации о конкретном файле. Пример: dir file:/etc |
dir ... | include <line_to_include> |
Во всех вариантах команды вывод можно фильтровать по строке.
Пример вывода с пояснениями: 1 drwx 0 Mon Feb 29 09:36:59 2016 users 2 -rw- 419 Mon Feb 29 13:34:08 2016 test Первое поле – порядковый номер записи. Второе поле – тип файла и права доступа для владельца файла. Возможный тип файла: - обычный файл * обычный файл, но запрещенный для модификации и удаления администратором с помощью команд консоли. Примечание: не путать с отсутствием доступа на запись (см. ниже). d директория b блочное устройство c символьное устройство p очередь FIFO (pipe) s сокет l символьная ссылка (в нормальной ситуации не должно появляться). Права доступа: r доступен для чтения w доступен для записи x доступен для исполнения Третье поле – размер файла в байтах. Четвертое поле – время последней модификации. Последнее поле – имя файла.
Специальные права доступа (setuid, setgid, sticky-bit) не отображаются. В случае корректной символьной ссылки все параметры кроме имени отображаются для конечного файла, на который указывает ссылка. Если по каким-то причинам не удается получить информацию о файле, выдается строка примерно такого вида: 2 ???? 12 Wed Jun 22 19:23:55 2016 test Наиболее вероятная ситуация, при которой это может появиться: символьная ссылка на несуществующий объект. Примечание: в этом случае длина и время модификации указываются для самой символьной ссылки. При попытке вывода информации о несуществующем файле выдается сообщение об ошибке: % Error opening <fs-prefix>:<file-path> (File not found) |
more <fs-prefix>:<file-path> |
Вывод содержимого текстового файла. |
more <fs-prefix>:<file-path> | include <line_to_include> |
Вывод содержимого текстового файла можно фильтровать по строке.
|
delete <fs-prefix>:<file-path> |
Удаление файла или пустой директории. После ввода команды выдается запрос на подтверждение пути к файлу. В случае, если удаляется директория, она обязательно должна быть пустой. |
copy <src-fs-prefix>:<src-file-path> <dst-fs-prefix>:<dst-file-path> |
Копирование файла. После ввода команды выдается запрос на подтверждение пути к исходному файлу: Source file path [<corrected-src-file-path>] ? Далее – запрос на подтверждение пути к результирующему файлу: Destination file path [<corrected-dst-file-path>] ? Если <dst-fs-prefix>:<dst-file-path> – директория, то к <corrected-dst-file-path> будет добавлено имя исходного файла. |
copy terminal-input <fs-prefix>:<file-path> <end-of-file-marker>
|
Создание текстового файла с помощью пользовательского ввода. <end-of-file-marker> – слово, обозначающее завершение файла. После ввода команды выдается запрос на подтверждение пути к файлу: Destination file path [<corrected-dst-file-path>]? [Enter] Если уже существует файл, совпадающий по имени с результирующим, выдается предупреждение с подтверждением: % Warning: There is a file already existing with this path Do you want to over write? [confirm] Далее, без приглашения, происходит ожидание ввода текста от пользователя. Ввод происходит по строкам. Ввод происходит до момента, когда пользователь на отдельной строке вводит слово, обозначающее завершение файла. Данное слово не попадает в результирующий файл. Данное слово обязательно должно быть единственным текстом в строке. Если будут другие символы, даже пробелы, строка будет воспринята как часть текстового файла. При необходимости пользователь может прервать ввод с помощью CTRL+C. В этом случае результирующий файл удаляется. При успешном создании файла выдается сообщение: File copied successfully Пример: hostname#copy terminal-input file:test EOF Destination file path [test] ? Line 1 Line 2 EOF File copied successfully hostname#more file:test Line 1 Line 2 |
Применение настроек, полученных от С-Терра КП |
|
up-setup <fs-prefix>:<file-path> |
<fs-prefix>:<file-path> –- путь к файлу настроек (setup_product.sh или setup_upagent.sh). Ограничение: <file-path> не может содержать пробелов, табуляций или символов ' (апостроф). |
Ограничение работы Продукта только с ГОСТ-алгоритмами |
|
crypto algorithms enable gost|all |
Команда crypto algorithms enable gost переводит Продукт в режим работы только с ГОСТ-алгоритмами. Для перехода в режим работы со всеми алгоритмами используется команда crypto algorithms enable all. Примечание: команду рекомендуется выполнять, когда шлюз не подключен к сети. |
Используемые префиксы:
file:<file-path>
где <file-path> – путь к файлу. Ограничение: <file-path> не должен содержать подстроку ^Z. Путь может быть как относительным (в этом случае он трактуется как путь от директории /var/cspvpn), так и абсолютным.
Существует ограничение: в имени файла не должно быть пробелов.
media: – путь к папке /media (вариант file:/media/ так же функционален).
Логика подтверждения пути к файлу:
<corrected-file-path> – полный путь к файлу:
Если <file-path> – абсолютный путь (начинается с прямого слэша), то <corrected-file-path> совпадает с <file-path>.
Если <file-path> – относительный путь (включая просто имя файла), то <corrected-file-path>=/var/cspvpn/<file-path>.
В ответ на запрос можно:
· Нажать на Enter – подтвердить введенный ранее путь к файлу.
· Ввести новый полный путь к файлу.
· Ввести новый относительный путь (например, просто имя файла). В этом случае снова будет выдан запрос на подтверждение полного пути к файлу
· Нажать CTRL+C – прервать выполнение команды.