- Работа с КриптоПро на linux сервере
- Ссылки
- Лицензия
- Корневые сертификаты
- Сертификаты
- Список установленных сертификатов
- Добавление реального сертификата
- Добавление реального сертификата с привязкой к закрытому ключу и возможностью подписывать документы
- Способ с дискетой или флешкой
- С жесткого диска
- Проверка успешности установки закрытого ключа
- Добавление тестового сертификата
- Удаление сертификата
- Проверка сертификата
- Просмотр всех атрибутов сертификата
- Экспорт сертификатов на другую машину
- Подписание документа ЭЦП
- Проверка подписи ЭЦП
- Получение исходного файла
- Certmgr.exe (средство диспетчера сертификатов)
- Синтаксис
- Параметры
- Примечания
- Примеры
- Операционные системы Astra Linux
Работа с КриптоПро на linux сервере
Ссылки
Лицензия
Для установки другой лицензии (под root):
Корневые сертификаты
Просмотр корневых сертификатов
Добавление корневых сертификатов (под root) из файла cacer.p7b
Необходимо последовательно добавить все сертификаты
Сертификаты
Список установленных сертификатов
certmgr -list , например:
Добавление реального сертификата
Добавить только сертификат (только проверка ЭЦП):
Добавление реального сертификата с привязкой к закрытому ключу и возможностью подписывать документы
Закрытый ключ состоит из шести key-файлов:
Способ с дискетой или флешкой
Скопировать в корень дискеты или флэшки сертификат и приватный ключ (из каталога 999996.000 , 999996 — название (alias) контейнера):
Выполнить команду по копированию ключа с флэшки на диск, ключ попадет в пользовательское хранилище My .
gate@example.com — то, что прописано в поле E сертификата (можно посмотреть командой keytool —printcert -file /path/to/cert/client.cer ):
С жесткого диска
Скопировать приватный ключ в хранилище (контейнер), где — имя пользователя linux:
Поставить «минимальные» права:
Узнать реальное название контейнера:
Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище My :
Если следующая ошибка, нужно узнать реальное название контейнера (см. выше):
Установить сертификат УЦ из-под пользователя root командой:
Проверка успешности установки закрытого ключа
Добавление тестового сертификата
Ввести пароль на контейнер test123 .
Ввести пароль на контейнер. По-умолчанию: 12345678
Удаление сертификата
Проверка сертификата
Просмотр всех атрибутов сертификата
В cryptcp нет необходимых инструментов для получения всех атрибутов сертификата. Поэтому следует использовать openssl , но настроив его.
Получаем SHA 1 хеши:
В цикле извлекаем сертификаты:
Настройка openssl для поддержки ГОСТ:
В файл /etc/ssl/openssl.cnf
Экспорт сертификатов на другую машину
Закрытые ключи к сертификатам находятся тут: /var/opt/cprocsp/keys . Поэтому эти ключи переносятся просто: создаем архив и переносим на нужную машину в тот же каталог.
Экспорт самих сертификатов (если их 14):
Переносим эти файлы на машину и смотрим, какие контейнеры есть:
И как обычно, связываем сертификат и закрытый ключ:
Если закрытый ключ и сертификат не подходят друг к другу, будет выведена ошибка:
Если все успешно:
Если нет закрытого ключа, то просто ставим сертификат:
Подписание документа ЭЦП
Пример создания ЭЦП (по SHA1 Hash):
[ReturnCode: x] | Описание | Возвращаемый код завершения в баше $? |
---|---|---|
0 | успешно | 0 |
0x8010006b | Введен неправильный PIN | 107 |
0x2000012d | Сертификат не найден | 45 |
0x20000065 | Не удалось открыть файл | 101 |
Проверка подписи ЭЦП
Для верифицирования сертификатов нужен сертификат удостоверяющего центра и актуальный список отзыва сертификатов, либо настроенный для этого revocation provider.
Корневой сертификат УЦ, список отзыва сертификата является одним из реквизитов самого сертификата.
Контрагенты когда открывают подписи в КриптоАРМ используют revocation provider, он делает проверки отзыва сертификата онлайн. Как реализована проверка в Шарепоинте не знаю. Знаю только что используется библиотека Крипто.Net
Проверка конкретной подписи из локального хранилища по его хешу:
Проверить, взяв сертификат из file1.sig , подпись файла file2.sig . Практически, надо использовать один и тот же файл:
[ReturnCode: x] | Текст | Описание | Возвращаемый код завершения в баше $? |
---|---|---|---|
0 | Успешно | 0 | |
0x80091004 | Invalid cryptographic message type | Неправильный формат файла | 4 |
0x80091010 | The streamed cryptographic message is not ready to return data | Пустой файл | 16 |
Получение исходного файла
Получение исходного файла (сообщения):
Будет ругаться на сертификат (так как не будет проверки), но подпись удалит. Вариант с проверкой:
Источник
Certmgr.exe (средство диспетчера сертификатов)
Диспетчер сертификатов (Certmgr.exe) предназначен для управления сертификатами, списками доверия сертификатов (CTL) и списками отзыва сертификатов (CRL).
Диспетчер сертификатов устанавливается автоматически вместе с Visual Studio. Для запуска этого средства используйте Командную строку разработчика или PowerShell для разработчиков в Visual Studio.
Диспетчер сертификатов (Certmgr.exe) является служебной программой командной строки, в то время как сертификаты (Certmgr.msc) — это оснастка консоли управления (MMC). Поскольку файл Certmgr.msc обычно находится в системном каталоге Windows, при вводе certmgr в командной строке может загрузиться оснастка консоли управления (MMC) «Сертификаты», даже если открыта командная строка разработчика для Visual Studio. Это происходит потому, что путь к оснастке предшествует пути к диспетчеру сертификатов в переменной среды PATH. При возникновении этой проблемы команды Certmgr.exe можно выполнить, указав путь к исполняемому файлу.
Общие сведения о сертификатах X.509 см. в разделе Работа с сертификатами.
В командной строке введите следующее.
Синтаксис
Параметры
Аргумент | Описание |
---|---|
sourceStorename | Хранилище сертификатов, содержащее существующие сертификаты, списки доверия сертификатов (CTL) и списки отзыва сертификатов (CRL) для добавления, удаления, сохранения или отображения. Это может быть файл хранилища или хранилище систем. |
destinationStorename | Конечное хранилище сертификатов или файл. |
Параметр | Описание: |
---|---|
/add | Добавляет сертификаты, CTL и CRL в хранилище сертификатов. |
/all | Добавляет все записи при использовании параметра /add. Удаляет все записи при использовании параметра /del. Отображает все записи при использовании без параметров /add или /del. Параметр /all нельзя использовать вместе с параметром /put. |
/c | Добавляет сертификаты при использовании параметра /add. Удаляет сертификаты при использовании параметра /del. Сохраняет сертификаты при использовании параметра /put. Отображает сертификаты при использовании без параметра /add, /del или /put. |
/CRL | При использовании с параметром /add добавляет списки отзыва сертификатов (CRL). При использовании с параметром /del удаляет списки отзыва сертификатов (CRL). Сохраняет списки CRL при использовании с параметром /put. Отображает списки отзыва сертификатов (CRL) при использовании без параметра /add, /del или /put. |
/CTL | При использовании с параметром /add добавляет списки доверия сертификатов (CTL). При использовании с параметром /del удаляет списки доверия сертификатов (CTL). Сохраняет списки CTL при использовании с параметром /put. Отображает списки доверия сертификатов (CTL) при использовании без параметра /add, /del или /put. |
/del | Удаляет сертификаты, CTL и CRL из хранилища сертификатов. |
/e encodingType | Указывает тип шифрования сертификата. Значение по умолчанию — X509_ASN_ENCODING . |
/f dwFlags | Задает открытый флаг хранилища. Это параметр dwFlags, передаваемый методу CertOpenStore. По умолчанию используется значение CERT_SYSTEM_STORE_CURRENT_USER. Этот параметр обрабатывается, только если задан параметр /y. |
/h[elp] | Отображает синтаксис команд и параметров программы. |
/n nam | Задает общее имя добавляемого, удаляемого или сохраняемого сертификата. Этот параметр может применяться только для сертификатов, его нельзя задавать для CTL и CRL. |
/put | Сохраняет в файл сертификат X.509, CTL или CRL из хранилища сертификатов. Файл сохраняется в формате X.509. Чтобы сохранить файл в формате PKCS #7, можно использовать параметр /7 с параметром /put. За параметром /put должен следовать параметр /c, /CTL или /CRL. Параметр /all нельзя использовать вместе с параметром /put. |
/r location | Указывает расположение системного хранилища в реестре. Этот параметр обрабатывается, только если задан параметр /s. Параметр location должен иметь одно из следующих значений. — currentUser означает, что хранилище сертификатов находится в разделе HKEY_CURRENT_USER. Это значение по умолчанию. |
/s | Означает, что хранилище сертификатов является системным. Если этот параметр не задан, хранилищем считается StoreFile. |
/sha1 sha1Hash | Задает хэш SHA1 добавляемого, удаляемого или сохраняемого сертификата, CTL или CRL. |
/v | Включает отображение подробных сведений о сертификатах, CTL и CRL. Этот параметр невозможно использовать с параметрами /add, /del или /put. |
/y provider | Задает имя поставщика хранилища. |
/7 | Сохраняет конечное хранилище как объект PKCS #7. |
/? | Отображает синтаксис команд и параметров программы. |
Примечания
Основные функции программы Certmgr.exe.
Отображение сведений о сертификатах, CTL и CRL на консоли.
Добавляет сертификаты, CTL и CRL в хранилище сертификатов.
Удаляет сертификаты, CTL и CRL из хранилища сертификатов.
Сохраняет в файл сертификат X.509, CTL или CRL из хранилища сертификатов.
Программа Certmgr.exe работает с двумя типами хранилищ сертификатов: системным и StoreFile. Указывать тип хранилища необязательно, поскольку программа Cedrtmgr.exe может автоматически определить тип хранилища и выполнить соответствующие действия.
При запуске программы Certmgr.exe без параметров выполняется оснастка «certmgr.msc» с графическим интерфейсом пользователя, облегчающим управление сертификатами, что также можно сделать из командной строки. В графическом интерфейсе пользователя имеется мастер импорта, копирующий сертификаты, CTL и CRL с диска в хранилище сертификатов.
Чтобы найти имена хранилищ X509Certificate для параметров sourceStorename и destinationStorename , можно скомпилировать и выполнить следующий код.
Дополнительные сведения см. в разделе Работа с сертификатами.
Примеры
Следующая команда выводит подробные сведения о содержимом системного хранилища my , используемого по умолчанию.
Следующая команда добавляет все сертификаты из файла myFile.ext в новый файл newFile.ext .
Следующая команда добавляет сертификат в файле testcert.cer в хранилище системы my .
Следующая команда добавляет сертификат в файле TrustedCert.cer в хранилище корневых сертификатов.
Следующая команда сохраняет сертификат с общим именем myCert в системном хранилище my в файл newCert.cer .
Следующая команда удаляет все CTL из системного хранилища my и сохраняет полученное хранилище в файл newStore.str .
Следующая команда сохраняет сертификат в системном хранилище my в файл newFile . Программа запросит у пользователя номер сертификата из хранилища my , который следует поместить в файл newFile .
Источник
Операционные системы Astra Linux
Оперативные обновления и методические указания
Операционные системы Astra Linux предназначены для применения в составе информационных (автоматизированных) систем в целях обработки и защиты 1) информации любой категории доступа 2) : общедоступной информации, а также информации, доступ к которой ограничен федеральными законами (информации ограниченного доступа).
1) от несанкционированного доступа;
2) в соответствии с Федеральным законом от 27.07.2006 № 149-ФЗ «Об информации, информационных технологиях и о защите информации» (статья 5, пункт 2).
Операционные системы Astra Linux Common Edition и Astra Linux Special Edition разработаны коллективом открытого акционерного общества «Научно-производственное объединение Русские базовые информационные технологии» и основаны на свободном программном обеспечении. С 17 декабря 2019 года правообладателем, разработчиком и производителем операционной системы специального назначения «Astra Linux Special Edition» является ООО «РусБИТех-Астра».
На web-сайтах https://astralinux.ru/ и https://wiki.astralinux.ru представлена подробная информация о разработанных операционных системах семейства Astra Linux, а также техническая документация для пользователей операционных систем и разработчиков программного обеспечения.
Мы будем признательны Вам за вопросы и предложения, которые позволят совершенствовать наши изделия в Ваших интересах и адаптировать их под решаемые Вами задачи!
Репозитория открытого доступа в сети Интернет для операционной системы Astra Linux Special Edition нет. Операционная система распространяется посредством DVD-дисков.
Информацию о сетевых репозиториях операционной системы Astra Linux Common Edition Вы можете получить в статье Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов.
В целях обеспечения соответствия сертифицированных операционных систем Astra Linux Special Edition требованиям, предъявляемым к безопасности информации, ООО «РусБИтех-Астра» осуществляет выпуск очередных и оперативных обновлений.
Очередные обновления (версии) предназначены для:
- реализации и совершенствования функциональных возможностей;
- поддержки современного оборудования;
- обеспечения соответствия актуальным требованиям безопасности информации;
- повышения удобства использования, управления компонентами и другие.
Оперативные обновления предназначены для оперативного устранения уязвимостей в экземплярах, находящихся в эксплуатации, и представляют собой бюллетень безопасности, который доступен в виде:
- инструкций и методических указаний по настройке и особенностям эксплуатации ОС, содержащих сведения о компенсирующих мерах или ограничениях по примене- нию ОС при эксплуатации;
- отдельных программных компонентов из состава ОС, в которые внесены изменения с целью устранения уязвимостей, инструкций по их установке и настройке, а также информации, содержащей сведения о контрольных суммах всех файлов оперативного обновления;
- обновлений безопасности, представляющих собой файл с совокупностью программных компонентов из состава ОС, в которые внесены изменения с целью устранения уязвимостей, а также информации, содержащей сведения о контрольных суммах всех файлов обновлений безопасности, указания по установке, настройке и особенностям эксплуатации ОС с установленными обновлениями безопасности.
Ввиду совершенствования нормативно-правовых документов в области защиты информации и в целях обеспечения соответствия информационных актуальным требованиям безопасности информации, а также обеспечения их долговременной эксплуатации, в том числе работоспособности на современных средствах вычислительной техники, рекомендуется на регулярной основе планировать проведение мероприятий по применению очередных и оперативных обновлений операционной системы.
Источник