- Работа с КриптоПро на linux сервере
- Ссылки
- Лицензия
- Корневые сертификаты
- Сертификаты
- Список установленных сертификатов
- Добавление реального сертификата
- Добавление реального сертификата с привязкой к закрытому ключу и возможностью подписывать документы
- Способ с дискетой или флешкой
- С жесткого диска
- Проверка успешности установки закрытого ключа
- Добавление тестового сертификата
- Удаление сертификата
- Проверка сертификата
- Просмотр всех атрибутов сертификата
- Экспорт сертификатов на другую машину
- Подписание документа ЭЦП
- Проверка подписи ЭЦП
- Получение исходного файла
- Как удалить электронную подпись с компьютера
- Когда сертификаты лучше не удалять
- Как удалить сертификат встроенными средствами Windows
- В обоих случаях у пользователя должны быть права администратора. Например, если вы войдете в систему под учетной записью «гостя», вы не сможете удалить и скрыть сертификат подписи.
- Как удалить сертификат ЭП в Linux
- Удаление сертификата через КриптоПро
- Можно ли восстановить сертификат после удаления
- шпаргалка по CryptoPro
- 1.3 Работа с сертификатами КриптоПро
Работа с КриптоПро на 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 |
Получение исходного файла
Получение исходного файла (сообщения):
Будет ругаться на сертификат (так как не будет проверки), но подпись удалит. Вариант с проверкой:
Источник
Как удалить электронную подпись с компьютера
Способы удаления сертификатов электронной подписи различаются в зависимости от того, с каким средством криптографической защиты (СКЗИ) работает сертификат. Это может быть КриптоПро CSP, VipNet CSP или СКЗИ на носителях — Рутокен ЭЦП 2.0 и JaCarta SE.
Описанные ниже способы подойдут только для сертификатов, которые работают с КриптоПро CSP. Другие сертификаты, например, для ЕГАИС, удаляются иначе — как, опишем в следующих статьях.
Когда сертификаты лучше не удалять
Удалять сертификат ЭП можно по разным причинам, например, когда его хозяин планирует сменить компьютер и стирает с него все личные данные. Однако, в некоторых случаях этого лучше не делать. Либо перед удалением скопировать сертификат на другой носитель.
Если у сертификата ЭП истек срок действия, не спешите его удалять. Подписать документ таким сертификатом не получится, но с его помощью по-прежнему можно расшифровать старые документы.
Правительство регулирует сроки хранения некоторых бухгалтерских, кадровых и налоговых документов. Например, договоры, счета-фактуры и налоговые декларации нужно хранить пять лет. Если эти документы электронные, то вместе с ними нужно хранить и сертификат ЭП, которым они подписаны.
Открыть документы, зашифрованные старым сертификатом ЭП, с помощью нового сертификата не получится — даже если новый сертификат выдан на того же человека.
Как удалить сертификат встроенными средствами Windows
Удалить сертификат электронной подписи с помощью средств Windows можно двумя способами: в браузере Internet Explorer и в менеджере сертификатов.
Чтобы удалить сертификат в интернет-браузере:
Зайдите в Internet Explorer.
Откройте раздел «Сервис» и выберите в нем пункт «Свойства браузера».
Перейдите во вкладку «Содержание» и нажмите на кнопку «Сертификаты».
В списке сертификатов выберите нужный и удалите его с помощью одноименной кнопки.
В этом случае удаляется только сертификат открытого ключа — общедоступная часть ЭП, а закрытый ключ останется на носителе (токене или компьютере). Система не будет показывать этот сертификат в общем списке, но при желании его можно вернуть. Для этого запросите сертификат открытого ключа в удостоверяющем центре, в котором получали электронную подпись.
Если же вы хотите удалить сертификат ЭП полностью, используйте менеджер сертификатов:
Откройте меню «Пуск».
В строке «Выполнить» введите команду «certmgr.exe» и нажмите кнопку ввода.
В списке сертификатов выберите тот, который хотите удалить и нажмите на него правой кнопкой мыши.
В контекстном меню выберите пункт «Удалить» и подтвердите это действие.
В обоих случаях у пользователя должны быть права администратора. Например, если вы войдете в систему под учетной записью «гостя», вы не сможете удалить и скрыть сертификат подписи.
Как удалить сертификат ЭП в Linux
В отличие от Windows, на Linux нет встроенного менеджера сертификатов, и, чтобы удалить сертификат ЭП, нужно использовать специальные программы. Порядок действий в таких программах схожий, однако некоторые команды, которые нужно ввести в терминал, могут отличаться. Мы расскажем, как удалить сертификат с помощью одной из самых распространенных программ — Mono.
Запустите терминал (командную строку) и введите команду certmgr –list.
В списке сертификатов найдите тот, который хотите удалить и скопируйте его название.
Введите команду «certmgr -del -c -m» и через пробел вставьте название нужного сертификата. Например, certmgr -del -c -m 0000.cer, где «0000.cer» — название сертификата.
Удаление сертификата через КриптоПро
Программа КриптоПро CSP нужна, чтобы записать сертификат электронной подписи на компьютер. С ее помощью можно и удалить сертификат. При этом программа удалит весь контейнер (хранилище) электронной подписи — и ключи подписи, и сертификат ЭП и корневой сертификат удостоверяющего центра.
Чтобы удалить сертификат электронной подписи:
Откройте меню «Пуск» и зайдите в «Панель управления».
Запустите программу КриптоПро CSP.
Откройте вкладку «Сервис» и выберите пункт «Удалить».
Выберите сертификат, который хотите удалить, и нажмите на кнопку «Готово».
Можно ли восстановить сертификат после удаления
Электронная подпись — важный инструмент, который хранит конфиденциальные данные пользователя. Чтобы защитить эти данные, удаленные сертификаты стираются из памяти компьютера безвозвратно. Они не попадут в «Корзину», и восстановить их с помощью специальных программ не получится. Таким образом производитель защищает пользователя от действий мошенников.
Восстановить можно только открытую часть сертификата ЭП которая хранилась в контейнере вместе с закрытым ключом. Например, если вы случайно удалили сертификат из браузера, то можете переустановить его с помощью программы КриптоПро.
Если же вы случайно удалили закрытый ключ ЭП, восстановить его не получится. Однако, если у вас есть копия сертификата ЭП и закрытого ключа на токене или флешке, вы можете заново записать их на компьютер.
Если же копии файлов подписи нет, то придется получать новый сертификат подписи в УЦ. В этом случае придется посетить офис УЦ лично. Если в вашем тарифе нет услуги перевыпуска сертификата, получение нового сертификата будет платным.
Обратите внимание, что открыть зашифрованный документ можно только тем сертификатом, которым его подписывали. Перевыпущенный сертификат ЭП не откроет старые документы.
Источник
шпаргалка по CryptoPro
Экспорт сертификатов и CRL:
/opt/cprocsp/bin/amd64/certmgr -export -cert -store root -all -dest root.p7b
/opt/cprocsp/bin/amd64/certmgr -export -crl -store CA -all -dest crl.p7b
Импорт сертификатов и CRL:
/opt/cprocsp/bin/amd64/certmgr -inst -all -crl -store CA -file crl.p7b
/opt/cprocsp/bin/amd64/certmgr -inst -all -store root -file root.p7b
проверка
openssl x509 -text -in Югралесхоз.cer -inform PEM
показать список корневых сертификатов
/opt/cprocsp/bin/amd64/certmgr -list -store root | grep -iE «^Serial|^Subject»
показать серийник сертификата:
openssl x509 -inform DER -in УЦ.cer -serial -noout | tr -d «serial=»
openssl x509 -text -in 02.cer -inform DER | grep «serial:» | tr -d «serial» | tr -d «:»
добавление корневого
/opt/cprocsp/bin/amd64/certmgr -inst -store root —file=CANovagK.cer
добавление CRL
wget http://www.tax23.ru/cdp/4d5157a4df9de15650eb634cf756a9f02727eb17.crl
/opt/cprocsp/bin/amd64/certmgr -inst -store CA -crl -file=4d5157a4df9de15650eb634cf756a9f02727eb17.crl
Преобразовать .p7b в .cer:
openssl pkcs7 -inform DER -outform PEM -in Certnew.p7b -print_certs > certificate_bundle.cer
Проверить наличие серийника сертификата в корневом хранилище:
/opt/cprocsp/bin/amd64/certmgr -list -store root | grep —color=auto -B 3 -A 4 `openssl x509 -text -in 02.cer -inform DER | grep «serial:» | tr -d «serial» | tr -d «:»`
Экспорт сертификата:
/opt/cprocsp/bin/amd64/certmgr -export -cert -store root -dest 0x2A9DDD325F1B0FAF4957EAA2532DE481.cer -dn CN=CNExample
Посмотреть данные одного сертификата:
/opt/cprocsp/bin/amd64/certmgr -list -store root -dn SN=Картошкин
Удалить сертификат из хранилища:
/opt/cprocsp/bin/amd64/certmgr -delete -store root -dn SN=Картошкин
Конвертировать из BASE64 в DER:
/opt/cprocsp/bin/amd64/certmgr -decode -src тэкторг.cer -dest тэкторг.der.cer -der
Проверка правильности сертификата:
/opt/cprocsp/bin/amd64/cryptcp -verify -errchain -f /path/to/file.p7z/path/to/file.p7z
Посмотреть лицензию:
[root@host]# /opt/cprocsp/sbin/amd64/cpconfig -license -view
Server license:
xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
Expires: 26 day(s)
Client license:
xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
Expires: 26 day(s)
Установить лицензионный ключ:
[root@host]# /opt/cprocsp/sbin/amd64/cpconfig -license -set xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
12. При попытке входа в личный кабинет появляется ошибка «Сертификат не выбран».
Ошибка «Сертификат не выбран» возникает в следующих случаях:
— При использовании браузера InternetExplorer, если сайт http://www.fedresurs.ru/ не добавлен в
«Надежные узлы»;
— Если не установлен ни один личный сертификат (проверить можно через Пуск – Панель
управления – Свойства обозревателя – Содержание – Сертификаты, в закладке «Личные» должен
быть необходимый сертификат);
— Если не установлен корневой сертификат (При просмотре личного сертификата отображается
ошибка «Не удалось проследить сертификат до корневого центра…»);
— Если в системе присутствуют просроченные сертификаты (в закладках «Личные»,
«Промежуточные центры сертификации», «Корневые центры сертификации» присутствуют
сертификаты с истекшим сроком действия, за исключением системных);
Если в окне свойств личного сертификата выводится какое либо сообщение об ошибке проверки
сертификата и значок сертификата помечен красным крестиком, при этом, корневые сертификаты
установлены и нет просроченных промежуточных, то необходимо переустановить
криптопровайдер и заново инициализировать личный ключ.
============
Инструкция админа:
https://www.cryptopro.ru/sites/default/files/docs/csp36r3/admin_guide_linux_r3.pdf
Назначение хранилищ:
Есть три хранилища. по умолчанию:CA, ROOT, My[1].
CA для списков СОС и промежуточных центров сертификации,
ROOT для сертификатов корневых центров сертификации и
My для личных сертификатов.
Имя хранилища является регистронезависимым.
Плагин для браузера:
https://www.cryptopro.ru/products/cades/plugin
Где качнуть JAVA:
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html
Где качнуть JCP:
http://cryptopro.ru/products/csp/jcp/downloads
Установка JCP:
sudo sh ./install.sh /etc/alternatives/jre_openjdk
1″ :pagination=»pagination» :callback=»loadData» :options=»paginationOptions»>
Источник
1.3 Работа с сертификатами КриптоПро
Для удобства использования утилит КриптоПро создадим на них символьные ссылки, для этого выполните:
Просмотр версии КриптоПро:
Для установки лицензии выполните (с правами root):
При использовании токенов сервис pcscd должен быть запущен. Проверка статуса pcscd:
если он выключен, то включите его:
Вывод сообщений журнала службы pcscd:
Узнать модель подключенного токена:
Работа с криптоконтейнерами
1. Проверить наличие доступных контейнеров:
Имена контейнеров используются для установки личных сертификатов.
- Считыватель HDIMAGE размещается в /var/opt/cprocsp/keys/ / т.е в данном случае используется жесткий диск для хранения ключей.
- Считыватель FLASH означает, что используется флешка для хранения приватных ключей.
- Также считывателем может выступать токен.
2. Имена контейнеров могут содержать символы на кириллице, поэтому чтобы корректно отобразить контейнеры используйте следующую команду:
Для дальнейшего использования имен контейнеров содержащих кодировку cp1251, выведем список контейнеров с уникальными именами:
3. Просмотр подробной информации о контейнере:
4. Перечисление контейнеров пользователя:
5. Перечисление контейнеров компьютера:
6. Открыть(проверить) контейнер пользователя:
7. Открыть(проверить) контейнер компьютера:
Установка личных сертификатов
Установку личных сертификатов необходимо производить в консоли обычного пользователя (не root).
1. Установка сертификата без привязки к ключам:
2. Установка личного сертификата cert_bob.cer, сертификат при этом попадает в пользовательское хранилище uMy. Приватный ключ находится на флешке.
в команде указывается сертификат cert_bob.cer, который ассоциируется с приватным контейнером \\.\FLASH\bob’
3. Установка сертификата с токена (в конце команды указывается контейнер)
если сертификат не привязан к контейнеру на токене, то при установке укажите путь до него через параметр -file:
Установка корневых сертификатов
При установке корневых сертификатов достаточно указать хранилище uRoot. При указании mRoot (при наличии прав администратора) корневой сертификат будет доступен всем пользователям системы.
1. Установка в хранилище КриптоПро:
2. Установка в хранилище ПК:
3. Установка списка отозванных сертификатов crl:
1. Просмотр установленных сертификатов:
2. Просмотр установленных сертификатов в локальном хранилище uMy:
3. Просмотр сертификатов в хранилище ПК (обычно сюда устанавливаются корневых сертификаты):
4. Просмотр сертификатов в контейнере:
5. Просмотр промежуточных сертификатов:
1. Удалить сертификат из личного хранилища сертификатов
Просмотрите установленные сертификаты:
Изучите список всех установленных сертификатов (в общем списке отображаются абсолютно все сертификаты).
Для удаления следует выполнить команду в Терминале:
Если установлено более одного сертификата, то будет предложено указать номер удаляемого сертификата.
2. Удалить сертификаты, установленные в хранилище КриптоПро:
Если установлено более одного сертификата, то будет предложено указать номер удаляемого сертификата.
3. Удалить все сертификаты, установленные в хранилище КриптоПро:
4. Удалить все сертификаты, установленные в хранилище ПК:
Перенос контейнера с flash носителя в локальное хранилище ПК
1. Активируем хранилище HDIMAGE:
2. Посмотрим, какие контейнеры доступны на флешке:
Перейдите на Flash носитель и скопируйте этот контейнер — каталог bob.000 с приватными (закрытыми) ключами в /var/opt/cprocsp/keys/user — в этом каталоге находится локальное хранилище HDIMAGE
3. Посмотрим доступные контейнеры:
Как видим, появился новый контейнер \\.\HDIMAGE\bob
Теперь flash носитель можно отключить, он нам больше не понадобится.
5. Установим пользовательский сертификат с привязкой к закрытому контейнеру \\.\HDIMAGE\bob
Если вы нашли ошибку, выделите текст и нажмите Ctrl+Enter.
Источник