Поступил вопрос от пользователя как поставить сертификат ЕШДИ c расширением .cer в доверенные корневые сертификаты? Если кто не знает, то это супер сертификат (Корневой сертификат Единого шлюза доступа к Интернету), который стоит посередине между вами и интернетом в сети государственных органов Казахстана. Писать о том плохо это или хорошо не буду, я думаю понятно почему.
Так вот мне казалось, что ответ будет довольно простым и в стиле вот ссылочка на оф сайт, где собственно всё расписано. А не тут-то было, ссылка, то есть, только вот инструкция только для Windows. Ох как же это знакомо, мы что-то сделаем, а вся последующая головная боль это уже проблемы пользователя.
Ну и раз не смогли это сделать специалисты ГТС то распишу я, может кому-то пригодится.
Windows
Собственно, вот сама инструкция от них.
Но если вам вдруг не подошла их инструкция то вот моя.
Обычный метод
- Скачиваем сертификат с сайта https://sts.kz/eshdi/
- Открываем сертификат и нажимаем установить
- Выбираем расположение (если нужно для сервисов, то лучше ставить на компьютер)
- Нажимаем несколько раз далее и готово
Скрипт
Я тут написал скрипт, который поставит либо удалит сертификат за вас. Итак, что он умеет:
- Скачивает сертификат с сайта (url может меняться, проверьте правильность на самом сайте sts.kz)
- В зависимости от того что вы выбрали ставит либо удаляет сертификат
При запуске скрипта через Powershell будет запрос, где каждая цифра означает:
- Ставит сертификат только для текущего пользователя
- Удаляет сертификат у текущего пользователя
- Ставит сертификат только для компьютера и стало быть для всех пользователей, программ, сервисов и т.д.
- Удаляет сертификат с компьютера
- Удаляет сертификат с компьютера и у пользователя
На мой взгляд это отличное решение особенно если вам нужно поставить этот сертификат на время, а после быстро его удалить. Если скрипт реально пригодился не забудьте активировать звёздочку на github.
RHEL
Вот тут уже я как раз и не нашел инструкции, и это печаль. Не понимаю, что такого сложного было в том, чтобы написать инструкцию и для Linux.
Обычный метод
- Скачиваем сертификат
sudo yum -y install wget sudo wget https://sts.kz/wp-content/uploads/2021/05/Unified_State_Internet_Access_Gateway.cer -o /etc/pki/ca-trust/source/anchors/Unified_State_Internet_Access_Gateway.crt
- Обновляем список доверенных корневых сертификатов
sudo update-ca-trust
- Если хочется удостоверится что сертификат стоит, то можно выполнить команду
trust list | grep "Unified State Internet Access Gateway"
label: Unified State Internet Access Gateway
Скрипт
Также написал скрипт, который я проверял на CentOS и Ubuntu. Суть та же, либо добавляет, либо удаляет сертификат. Как им пользоваться написано в описании проекта на github.
Ubuntu
Обычный метод
- Скачиваем сертификат
sudo apt -y install wget sudo wget --output-document /usr/local/share/ca-certificates/Unified_State_Internet_Access_Gateway.crt https://sts.kz/wp-content/uploads/2021/05/Unified_State_Internet_Access_Gateway.cer
- Обновляем список доверенных корневых сертификатов
sudo update-ca-certificates
- Если хочется удостоверится что сертификат стоит, то можно выполнить команду
trust list | grep "Unified State Internet Access Gateway"
label: Unified State Internet Access Gateway
Скрипт
Также написал скрипт, который я проверял на CentOS и Ubuntu. Суть та же, либо добавляет, либо удаляет сертификат. Как им пользоваться написано в описании проекта на github.
Замечание
Многие сервисы не работают с сертификатами установленными в системе и для таких сервисов придётся искать мануалы как и куда добавлять сертификат. Работает данный метод или нет можно просто выполнив команду curl на сайт, на котором подменяется сертификат.
Комментарии