Работа с КриптоПро CSP в MacOS.
Работа с электронной подписью в MacOS.
Настройка MacOS для работы на Федеральной налоговой службы.
Настройка MacOS для работы на портале Госуслуги.
Сейчас будет приведена общая информация. Настройка для работы на портале nalog.ru и портале Госуслуг описана ниже.
Рассматриваемая конфигурация:
- macOS 10.15 Catalina (в других поддерживаемых версиях macOS настройки аналогичны),
- КриптоПро CSP 5.0 (Сертифицированные версии доступны после регистрации)
- КриптоПро ЭЦП Browser plug-in 2.0.(страница загрузки)
Страница настроек КриптоПро ЭЦП Browser plug-in 2.0 /etc/opt/cprocsp/trusted_sites.html
Замечания:
Чтобы открыть программу от несертифицированного разработчика в обход защиты Gatekeeper, нажмите на ярлыке правой клавишей мыши (либо левой клавишей мыши в сочетании с клавишей Control, либо тапнув двумя пальцами по трекпаду), и выберите опцию Открыть. Gatekeeper предупредит, что приложение может содержать вирусы, но позволит его запустить.
Что бы отключить проверку Gatekeeper полностью можно воспользоваться инструкцией.
Поддерживаемые ключевые носители:
- Флеш-накопитель;
- Жесткий диск компьютера, так же HDIMAGE которые хранятся в /var/opt/cprocsp/keys/'whoami' (возможно еще по этому пути /opt/cprocsp/keys/'whoami' где whoami это имя пользователя);
- Рутокен (для Рутокен S необходима установка драйвера (для Mojave и Catalina, для High Sierra и старше) и перезагрузка компьютера, при использовании Рутокен S возможны проблемы);
- ESMART Token;
- Другие менее распространенные виды токенов;
Внимание: в КриптоПро CSP 4.0 ключевые носители eToken и JaCarta не поддерживаются (JaCarta поддерживается в КриптоПро CSP 5.0).
Процесс установки программы КриптоПро CSP 5.0 в Apple MacOS:
Установка КриптоПро ЭЦП Browser plug-in в Apple MacOS:
Для работы на портале nalog.ru необходимо:
иметь в наличии квалифицированный сертификат электронной подписи и соответствующий ему ключ,
- при использовании сертификата по ГОСТ Р 34.10-2012 выполнить команды ( скопировать не меня текст ) :
sudo /opt/cprocsp/sbin/cpconfig -ini '\cryptography\OID\1.2.643.7.1.1.1.1!3' -add string 'Name' 'GOST R 34.10-2012 256 bit'
sudo /opt/cprocsp/sbin/cpconfig -ini '\cryptography\OID\1.2.643.7.1.1.1.2!3' -add string 'Name' 'GOST R 34.10-2012 512 bit'
При появлении строки Password: нужно ввести пароль пользователя в операционной системе macOS и нажать клавишу Enter.
- использовать браузер с поддержкой TLS сертификатов по ГОСТ Р 34.10-2012 (например, Chromium GOST),
Перед переходом по ссылке устанавливаем сертификаты в хранилище личные следующей командой:
/opt/cprocsp/bin/csptestf -absorb -certs
- входить в личный кабинет по прямой ссылке:
https://lkul.nalog.ru - для юридических лиц,
https://lkipgost2.nalog.ru/lk - для индивидуальных предпринимателей. (раньше была ссылка https://lkipgost.nalog.ru/lk )
Чтобы удалить выбранный ранее сертификат электронной подписи из кеша Chromium GOST перезапустите браузер.
При использовании в качестве ключевого носителя облачного токена или простого USB-флеш накопителя Chromium GOST необходимо запускать из Терминала с помощью команды:
/Applications/Chromium-Gost.app/Contents/MacOS/Chromium-Gost --no-sandbox
Для работы на портале Госуслуг необходимо:
Если не установлен, то скачать и поставить IFCPlugin.pkg - это плагин для работы на портале государственных услуг.
Скачать файл конфигурации для IFCPlugin в директорию Загрузки.
Подключить ключевой носитель (флеш-накопитель, Рутокен, ESMART token и т.д.).
Выполнить в терминале команды (при появлении строки Password: нужно ввести пароль пользователя в операционной системе macOS и нажать клавишу Enter):
sudo cp ~/Downloads/ifc.cfg /Library/Internet\ Plug-Ins/IFCPlugin.plugin/Contents/ifc.cfg
/opt/cprocsp/bin/csptestf -absorb -certs -autoprov
Для Chromium GOST также выполнить в терминале команду (Важно, что бы Chromium GOST был в "Программах"):
sudo cp /Library/Google/Chrome/NativeMessagingHosts/ru.rtlabs.ifcplugin.json /Library/Application\ Support/Chromium/NativeMessagingHosts
Проверить в используемом браузере (Mozilla Firefox, Google Chrome или Chromium GOST), что включено расширение - Расширение для плагина Госуслуг.
Расширение для Google Chrome/Chromium GOST.
На странице входа на портал Госуслуг:
- Выбираем "Вход с помощью электронной подписи";
- Если появляется ошибка "Вход с помощью электронной подписи отключен", то действуем по этой инструкции ссылка.
- Нажимаем на кнопку "Готово";
- Выбрать нужный сертификат электронной подписи;
- В окне Ввод пин-кода нажать кнопку "Продолжить";
- При возникновении окна CryptoPro CSP ввести пин-код для ключевого контейнера в поле Password: и нажать кнопку "OK".
Основные команды
Указанные ниже действия выполняются в Терминале, как открыть терминал показано ниже:
Открыть приложение Терминал можно через Finder >пункт меню Переход>Утилиты>Терминал.
- Просмотр и установка сертификатов с носителя ключа в хранилище "Личные"( My ):
-
/opt/cprocsp/bin/csptestf -absorb -certs
-
- Установить сертификат из файла в хранилище личные (MY):
-
/opt/cprocsp/bin/certmgr -inst -store my -f ~/downloads/name.cer
-
- Установить сертификат из файла в хранилище промежуточных центров сертификации (CA):
-
/opt/cprocsp/bin/certmgr -inst -store ca -f ~/downloads/name.cer
-
- Установить сертификат из файла в хранилище доверенных корневых издателей (ROOT) (команда выполняется через sudo и требует ввода пароля):
-
sudo /opt/cprocsp/bin/certmgr -inst -store root -f ~/downloads/name.cer
-
- Просмотр сертификатов в хранилище личные (MY):
-
/opt/cprocsp/bin/certmgr -list -store my /opt/cprocsp/bin/certmgr -list -store my | grep -iE '^Serial|^Subject'
-
- Просмотр сертификатов в хранилище промежуточных центров сертификации (CA):
-
/opt/cprocsp/bin/certmgr -list -store ca /opt/cprocsp/bin/certmgr -list -store ca | grep -iE '^Serial|^Subject'
-
- Просмотр сертификатов в хранилище доверенных корневых издателей (ROOT):
-
/opt/cprocsp/bin/certmgr -list -store root /opt/cprocsp/bin/certmgr -list -store root | grep -iE '^Serial|^Subject'
-
- Очистить хранилище личные (MY) (после параметра -dn пишем один из параметров вашего сертификата: CN, E и т.д.):
-
/opt/cprocsp/bin/certmgr -delete -store my -all /opt/cprocsp/bin/certmgr -delete -store my -dn CN=CNExample
-
- Очистить хранилище промежуточных центров сертификации (CA) (после параметра -dn пишем один из параметров вашего сертификата: CN, E и т.д.):
-
/opt/cprocsp/bin/certmgr -delete -store ca -all /opt/cprocsp/bin/certmgr -delete -store ca -dn CN=CNExample
-
- Очистить хранилище доверенных корневых издателей (ROOT) (команда выполняется через sudo и требует ввода пароля) (после параметра -dn пишем один из параметров вашего сертификата: CN, E и т.д.):
-
sudo /opt/cprocsp/bin/certmgr -delete -store root -all sudo /opt/cprocsp/bin/certmgr -delete -store root -dn CN=CNExample
-
- Копирование контейнеров ключей (что бы просмотреть, что копировать можно выполнить /opt/cprocsp/bin/csptest -keyset -verifycontext -enum -unique или /opt/cprocsp/bin/csptestf -absorb -certs ):
-
/opt/cprocsp/bin/csptestf -keyc -contsrc 'откуда и что копируем' -contdest 'куда и имя копии' /opt/cprocsp/bin/csptestf -keyc -contsrc 'SCARD\rutoken_lt_99999999\0A00' -contdest '\\.\HDIMAGE\123' /opt/cprocsp/bin/csptestf -keyc -contsrc 'HDIMAGE\\123.000' -contdest '\\.\FLASH\key'
-
-
- Удаление контейнера ключа:
-
/opt/cprocsp/bin/csptestf -passwd -cont '\\.\HDIMAGE\123' -deletek
-
- Проверка установленной лицензии КриптоПро CSP:
-
/opt/cprocsp/sbin/cpconfig -license -view
- В ответ Вы получите введенную лицензию, ее срок и тип.
-
- Ввод лицензии КриптоПро CSP (сохраняем все "-" при вводе серийного номера):
-
sudo /opt/cprocsp/sbin/cpconfig -license -set xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
-
- Какие алгоритмы установленыa (ГОСТ 2001, 2012, ...):
-
/opt/cprocsp/sbin/cpconfig -defprov -view_type
-
- Просмотреть все алгоритмы, одного типа:
-
/opt/cprocsp/sbin/cpconfig -defprov -view -provtype 81
-
- Информация о ключе:
-
/opt/cprocsp/bin/csptest -keyset -container 'SCARD\rutoken_lt_99999999\0A00\BABA' -info
-
- Экспорт сертификата в файл:
-
/opt/cprocsp/bin/certmgr -export -cert -store my -dest ~/Downloads/123.cer -dn CN=CNExample
-
- Экспорт ключа в контейнер PFX:
-
/opt/cprocsp/bin/certmgr -export -pfx -dn 'CN=workite.ru' -dest ~/Downloads/key.pfx -provtype 81
-
- Импорт сертификата и закрытого ключа из контейнера PFX:
-
/opt/cprocsp/bin/certmgr -inst -pfx -file ~/Downloads/key.pfx
-
- Перечисление всех смарт карт
-
/opt/cprocsp/bin/csptest -card -enum -v -v
-
- Перечисление контейнеров пользователя:
-
/opt/cprocsp/bin/csptest -keyset -enum_cont -verifycontext -fqcn
-
- Перечисление контейнеров компьютера:
-
/opt/cprocsp/bin/csptest -keyset -enum_cont -verifycontext -fqcn -machinekeys
-
- Просмотр списка настроенных ДСЧ:
-
/opt/cprocsp/sbin/cpconfig -hardware rndm -view
-
- Для добавления консольного БиоДСЧ:
-
/opt/cprocsp/sbin/cpconfig -hardware rndm -add bio_tui -level 5 -name "Console BioRNG"
-
- Для добавления графического БиоДСЧ:
-
/opt/cprocsp/sbin/cpconfig -hardware rndm -add bio_gui -level 4 -name "GUI BioRNG"
-
Использую sudo, при вводе пароля, символы не отображаются.