Как установить сертификат на линукс
Перейти к содержимому

Как установить сертификат на линукс

  • автор:

Установка сертификата в Astra Linux

1. Запускаем Firefox и открываем настройки.

2. Выбираем раздел «Приватность и защита». Листаем страницу вниз, до раздела «Сертификаты», и жмём на кнопку «Просмотр сертификатов…»

3. В Диалоговом окне «Управлении сертификатами» выбираем вкладку «Центры сертификации» и нажимаем кнопку «Импортировать…»

4. В появившемся диалоговом окне выбираем предоставленный корневой сертификат и жмём «Открыть». Корневой сертификат должен быть предварительно загружен.

5. Устанавливаем галочку на пункте «Доверять при идентификации веб-сайтов» и нажимаем «ОК»

6. Загруженный сертификат должен появиться в списках доверенных сертификатов

Установка сертификата системно

1. Запускаем «Терминал Fly»

2. Вводим две команды в указанной последовательности (регистр имеет значение). Сертификат должен находиться в каталоге «Загрузки».

  1. «sudo cp Загрузки/ca-root.crt /usr/local/share/ca-certificates»
  2. «sudo update-ca-certificates»

© 2022-2024 ПАО «Ростелеком»

Техническая поддержка проекта ЕСПД «Цифровая экономика».
Государственный контракт № 071/23/89 от 31.08.2023
Регламент технической поддержки

8 800 301 34 14

Добавляем корневой доверенный сертификат в Linux

date

28.09.2022

user

itpro

directory

CentOS, Linux, Ubuntu

comments

комментариев 5

В этой статье мы покажем, как добавить (установить) новый сертификат в список доверенных корневых сертификатов в Linux.

Например, вы используете на своем сайте самоподписанный SSL/TLS сертификат и не хотите, чтобы на клиентах при открытии сайта появлялась ошибка SEC_ERROR_UNKNOWN_ISSUER.

недоверенные сертификат в браузере на linux

В данном примере мы установим в Linux корневой сертификат Минцифры (Russian Trusted Sub CA), на базе которого сейчас выпускаются сертификаты для сайтов многих компаний и гос-органов РФ.

Или это может быть самоподписанный сертификат с сайта IIS на Windows.

Чтобы проверить, что ваш хост Linux не может проверить (и соответственно не доверяет) SSL сертификату на определенном сайте, выполните команду:

$ curl –I https://www.sberbank.ru

curl: (60) SSL certificate problem: unable to get local issuer certificate. More details here: https://curl.haxx.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above.

curl - не могу проверить сертификат

В данном случае нам нужно добавить корневой центр сертификации этого сайта в список доверенных корневых сертификатов Linux.

Установка корневого сертификата в Linux

Для обновления хранилища доверенных сертификатов в Linux вам нужен файл сертификата в формате PEM с расширением файла .crt. PEM сертификат представляет собой текстовый файл в формате base64, который содержит в начале файла строку —-BEGIN CERTIFICATE—- и в конце ——END CERTIFICATE——.

PEM формат сертификата

Если ваш файл сертификата в формате DER, вы можете конвертировать его в PEM формат с помощью утилиты openssl:

$ openssl x509 -in my_trusted_sub_ca.der -inform der -out my_trusted_sub_ca.cer

Сначала рассмотрим, как добавит корневой сертификат вашего CA в доверенные в дистрибутивах Linux на базе DEB (Ubuntu, Debian, Mint, Kali Linux).

Скопируйте файлы ваших сертификаты в хранилище сертификатов в каталог usr/local/share/ca-certificates/:

$ sudo cp my_trusted_sub_ca.crt /usr/local/share/ca-certificates/
$ sudo cp my_trusted_root_ca.crt /usr/local/share/ca-certificates/

Обновите хранилище сертификатов командой:

$ sudo update-ca-certificates -v

Если команда не найдена, установите пакет в Ubuntu:

$ sudo apt-get install -y ca-certificates

обновить хранилище сертфикатов в linux

Если сертификаты успешно добавлены, появится сообщение о том, что сертфикат скопирован в /etc/ssl/certs/:

Updating certificates in /etc/ssl/certs… 2 added, 9 removed; done. Running hooks in /etc/ca-certificates/update.d

Также вы можете добавить новые сертификаты в хранилище с помощью команды:

$ sudo dpkg-reconfigure ca-certificates

Выберите из списка сертификаты, которые нужно добавить в доверенные.

добавить сертификаты в доверенные CA в Linux

В Linux список доверенных сертификатов содержится в файле /etc/ssl/certs/ca-certificates.crt. Обе рассмотренные выше команды обновят этот файл и добавят в информацию о новых сертификатах.

Вы можете проверить, что ваши сертификаты были добавлены в доверенные с помощью команды:

Укажите часть Common Name вашего сертификата вместо YourCASubj для поиска в хранилище по subject.

awk вывести доверенные сертификаты

Вы можете убедиться, что ваша ОС доверяет сертификату с помощью команду:

$ openssl verify my_trusted_sub_ca.crt

openssl verify - проверить доверяет ли linux сертификату

Если Linux не доверяет сертификату, появится ошибка:

error 20 at 0 depth lookup: unable to get local issuer certificate error my_trusted_sub_ca.crt: verification failed

Теперь проверьте, что на сайте используется доверенный SSL сертификат с помощью curl:

$ curl –I https://www.sberbank.ru

Все ок, сертификат доверенные < HTTPOnly: secure >.

curl проверка ssl сертификата secure

Можно также вручную добавить путь к сертификату:

$ sudo mkdir /usr/share/ca-certificates/extra

$ sudo cp my.crt /usr/share/ca-certificates/extra/mycert1.crt
$ sudo vim /etc/ca-certificates.conf

exta/mycert1.crt

Чтобы удалить сертификат, удалите ваш crt файл:

$ sudo rm /usr/local/share/ca-certificates/yourcert.crt

И обновите хранилище:

$ sudo update-ca-certificates —fresh

В дистрибутивах Linux на базе RPM (CentOS, Oracle, RHEL, Rocky Linux, Fedora) для добавления сертификата в доверенные:

  1. Установите пакет ca-certificates: # yum install ca-certificates
  2. Скопируйте файл сертификата в каталог /etc/pki/ca-trust/source/anchors/: # cp mycert.crt /etc/pki/ca-trust/source/anchors/
  3. Обновите хранилище:
    # update-ca-trust force-enable
    # update-ca-trust extract

Аналогичная статья по управлению хранилищем корневых доверенных сертификатов в Windows.

Добавить корневой доверенный сертификат для браузеров Mozilla, Chrome

Теперь все системные утилиты будут доверять сайтам, использующим данный CA. Но это не повлияет на веб браузеры Mozilla Firefox или Google Chrome. Они по-прежнему будут показывать предупреждение о недоверенном сертификате.

Дело в том, что браузеры Firefox, Chromium, Google Chrome, Vivaldi и даже почтовый клиент Mozilla Thunderbird не используют системное хранилище сертификатов Linux. Хранилище сертификатов для этих программ находится в директории пользователя в файле cert8.db (для Mozilla) или cert9.db (для Chromium и Chrome). Для обновления этих хранилищ сертификатов используется утилита certutil из пакета libnss3-tools.

$ sudo apt install libnss3-tools

установка libnss3-tools

Теперь выполните следующие скрипты для добавления ваших сертификатов в хранилище через NSS:

#!/bin/bash
certfile=»my_rusted_root_ca.crt»
certname=»My Root CA1″
for certDB in $(find ~/ -name «cert8.db»)
do
certdir=$(dirname $);
certutil -A -n «$» -t «TCu,Cu,Tu» -i $ -d dbm:$
done
for certDB in $(find ~/ -name «cert9.db»)
do
certdir=$(dirname $);
certutil -A -n «$» -t «TCu,Cu,Tu» -i $ -d sql:$
done

После запуска скрипта, сайтам с данным CA будут доверять все браузеры.

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Установка сертификатов в ОС Ubuntu

В прошлой статье мы рассказали, что такое сертификаты в Ubuntu и какие задачи они выполняют. В этой статье поговорим о способах установки сертификатов, в частности расскажем об их установке в операционной системе.

Установка в ОС

Если вы захотите использовать подписанные сертификаты для включения поддержки HTTPS на веб-сервере, затем откроете такой веб-сайт с помощью браузера или сделаете к нему запрос в командной строке, систем вам выдаст ошибку SSL. В ней будет сказано, что этот сертификат не является доверенным и подключение к этому сайту может быть не безопасно.

Чтобы сертификат считался доверенным, в ОС необходимо добавить корневой сертификат центра сертификации, с помощью которого он был подписан в список доверенных. Если сертификат самоподписный, в список доверенных можно добавлять его самого.

У вас уже есть сертификат ca.crt., но как сделать так, чтобы ОС расценивала его как достоверный? Для этого скопируйте его в папку /usr/local/share/ca-certificates:

cp ./ca.crt /usr/local/share/ca-certificates/losstca.crt

Дальше нужно выполнить команду:

Затем нужно проверить что система воспринимает сертификат как доверенный выполнив команду curl:

Однако данный способ уместен, когда программы используют системное хранилище доверенных сертификатов. Браузеры (Firefox и Google Chrome) имеют собственные хранилища сертификатов и не используют хранилище системы. В каждом браузере нужно импортировать сертификаты отдельно.

В противном случае вы получите такую ошибку:

Chrome, Firefox, Thunderbird используют nssdb для работы с сертификатами. Вы можете импортировать сертификаты как в графическом интерфейсе браузера, так и в терминале, используя программу certutil.

Как установить сертификат на линукс

Для получения защищённого доступа ко всем сайтам и онлайн-сервисам используйте браузеры с поддержкой российских сертификатов: Яндекс Браузер или Атом.
Если вы привыкли работать в других браузерах или возникли проблемы с работой сторонних программ, вы можете вручную установить сертификаты в операционную систему.

Для корректной работы нужно два сертификата — корневой и выпускающий.

Скачайте и установите сертификаты Удостоверяющего Центра Минцифры

  1. Скачайте корневой и выпускающий сертификаты в папку «Downloads» на вашем компьютере.
  2. Нажмите на «Activities — Terminal», чтобы открыть терминал

instruction

  1. Убедитесь, что файлы сертификатов «russian_trusted_root_ca.crt» и «russian_trusted_sub_ca.crt» находятся в директории Downloads. Для проверки перейдите в неё с помощью cd и вызовите команду ls для отображения списка файлов

instruction

  1. Скопируйте корневой сертификат в каталог /usr/share/pki/ca-trust-source/anchors/. Используйте команду sudo cp russian_trusted_root_ca.crt /usr/share/pki/ca-trust-source/anchors
  2. Введите пароль суперпользователя

instruction

  1. Скопируйте в этот же каталог выпускающий сертификат. Используйте команду sudo cp russian_trusted_sub_ca.crt /usr/share/pki/ca-trust-source/anchors
  2. Обновите общесистемное хранилище сертификатов командой sudo update-ca-trust

instruction

  1. Проверьте хранилище доверенных сертификатов. Воспользуйтесь командой trust list. В конце списка должны появиться сертификаты «Russian Trusted Root CA» и «Russian Trusted Sub CA»

instruction

Очистите кеш вашего браузера

Очистите кеш браузера на устройстве, с которого осуществляется доступ. Это необходимо для корректной работы с ресурсами, защищёнными сертификатами безопасности Минцифры.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *