Установка корневого сертификата Windows\Linux: различия между версиями
Srv (обсуждение | вклад) |
Srv (обсуждение | вклад) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 2: | Строка 2: | ||
== Местонахождение корневого сертификата == | == Местонахождение корневого сертификата == | ||
.. | https://cloud2.rpn-sfera.ru/library/83efc78d-ee06-40d7-a2f9-c38d3879d737/soft/%D0%A1%D0%B5%D1%80%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D1%8B | ||
== Установка корневого сертификата на Windows == | == Установка корневого сертификата на Windows == | ||
Строка 59: | Строка 58: | ||
== Установка в браузеры == | == Установка в браузеры == | ||
'''Примечание: Для импорта корневого сертификата в браузер сертификат должен быть добавлен в систему ( что мы и | '''Примечание: Для импорта корневого сертификата в браузер сертификат должен быть добавлен в систему ( что мы и делали выше )''' | ||
Так же для некоторых браузеров достаточно что бы корневой сертификат был добавлен в систему . На пример Opera . | Так же для некоторых браузеров достаточно что бы корневой сертификат был добавлен в систему . На пример Opera . |
Текущая версия от 06:35, 30 июля 2024
Местонахождение корневого сертификата
Установка корневого сертификата на Windows
Дважды щелкаем по сертификату и открывается окно с его свойствами. Дальше нажимаем на кнопку «Установить сертификат»:
Установить можно для текущего пользователя или для всего компьютера. Так как у меня это тестовая установка, я выберу «Текущий пользователь»:
После нажатия на кнопку «Далее» нужно выбрать «Поместить все сертификаты в следующее хранилище» и нажать кнопку «Обзор»:
В открывшемся окне выбираем «Доверенные корневые центры сертификации»:
Затем нажимаем кнопку «ОК», «Далее» и «Готово».
И подтверждаем установку сертификата:
И затем нужно будет ещё раз нажать кнопку «ОК».
Если вы еще раз откроете свойства сертификата (двойным щелчком по нему), то увидите что система начала ему доверять:
Установка корневого сертификата на Linux
Ubuntu и Debian
По данному пути находится хранилище сертификатов /usr/local/share/ca-certificates/
Копируем в каталог ca-certificates корневой сертификат
После чего открываем терминал и вводим команду sudo update-ca-certificates ( Обновление списка сертификатов )
CentOS, Fedora и RedHat
По данному пути находится хранилище сертификатов /etc/pki/ca-trust/source/anchors/
Копируем в каталог anchors корневой сертификат
После чего открываем терминал и вводим команду sudo update-ca-trust ( Обновление списка сертификатов )
Установка в браузеры
Примечание: Для импорта корневого сертификата в браузер сертификат должен быть добавлен в систему ( что мы и делали выше )
Так же для некоторых браузеров достаточно что бы корневой сертификат был добавлен в систему . На пример Opera .
Установка в Google Chrome
Для того чтобы добавить сертификат в Google Chrome или Chromium в графическом интерфейсе откройте настройки из главного меню:
Перейдите в Конфиденциальность и безопасность -> Безопасность -> Настроить сертификаты:
В открывшемся окне перейдите на вкладку Центры сертификации:
Здесь необходимо нажать кнопку Импорт и выбрать файл корневого сертификата:
Далее надо настроить параметры доверия. Поскольку сейчас сертификат будет использоваться для подтверждения подлинности сайтов, то можно оставить только первый пункт:
Установка сертификата через командную строку linux в Google Chrome
Для работы с сертификатами вам понадобится пакет libnss3-tools, установите его с помощью команды:
sudo apt install libnss3-tools
База данных сертификатов Google Chrome находится в папке ~/.pki/nssdb. Вы можете посмотреть доступные сертификаты командой:
certutil -d ~/.pki/nssdb -L
Синтаксис команды для добавления сертификата следующий:
certutil -d путь/к/базе/данных -A -t "настройки_доверия" -n "имя" -i "/путь/к/файлу"
Обратите внимание на настройки доверия. Существует три группы атрибутов доверия:
Для SSL;
Для Email;
Для программного обеспечения и других объектов.
Каждая из групп может содержать такие атрибуты:
p - валидный пир;
P - доверенный пир;
c - валидный центр сертификации;
C - доверенный центр сертификации;
T - доверенный центр сертификации для авторизации клиентов.
Для SSL сертификатов можно достаточно такой последовательности "TC,,". То есть атрибуты T и C для SSL и ничего для всего остального. Вся команда для импорта ca.crt будет выглядеть вот так:
certutil -d sql:~/.pki/nssdb -A -t "TC,," -n "Losst CA" -i ./ca.crt
После этого вы снова можете посмотреть список сертификатов для того чтобы убедится что всё хорошо:
certutil -d sql:~/.pki/nssdb -L
Сертификат есть и после этого браузер будет считать его доверенным. Сертификаты добавленные в графическом интерфейсе тоже добавляются сюда. Теперь вы знаете как выполняется установка корневых сертификатов Ubuntu.
Установка в Firefox
В Firefox всё немного сложнее. Тут нет централизованного хранилища сертификатов, а поэтому их придется добавлять для каждого профиля отдельно, что в графическом интерфейсе, что в командной строке. Для того чтобы добавить сертификат в графическом интерфейсе откройте Настройки в главном меню:
Далее перейдите в раздел Защита и безопасность и найдите там пункт Сертификаты. Здесь надо нажать кнопку Посмотреть сертификаты:
В открывшемся окне перейдите на вкладку Центры сертификации и нажмите кнопку Импортировать, для того чтобы добавить свой сертификат. Далее выберите файл сертификата и установить настройки доверия. Нужно отметить как минимум первую галочку - Доверять при идентификации веб-сайтов:
Установка сертификата через командную строку linux в firefox
Если вы хотите добавить сертификат в командной строке, то необходимо добавить его во все профили. Профили находятся в папке ~/.mozilla/firefox/. В данном примере, есть два профиля и только один из них заполнен:
Файлы nssdb находятся прямо в папке профиля, поэтому можно просто передать эту папку в certutil. Например, для просмотра списка сертификатов выполните:
certutil -d ~/.mozilla/firefox/k9z8sttc.default-release/ -L
Для добавления сертификата используйте такую команду подставив свой путь к папке профиля:
certutil -d ~/.mozilla/firefox/k9z8sttc.default-release/ -A -t "TC,," -n "Losst" -i ./ca.crt
После этого полученный сертификат появится в списке.
Обратите внимание, что такой способ работает для Firefox, установленного как .deb пакет. Если у вас Firefox, установленный с помощью пакетного менеджера snap, то этот метод может не работать.
Для Firefox есть ещё один способ добавить сертификаты из системы автоматически без использования certutil. Это загрузка сертификатов с помощью политики. Возможно вы слышали про опцию security.enterprise_roots.enabled в about:config. Она работает только в Windows и MacOS но не в Linux. Однако, можно создать файл политики папке /usr/lib/firefox/distribution/ и там прописать какие сертификаты следует загрузить. По умолчанию Firefox будет искать сертификаты таких каталогах:
/usr/lib/mozilla/certificates /usr/lib64/mozilla/certificates ~/.mozilla/certificates В самом файле надо указать имена файлов сертификатов если они находятся в одной из этих папок или полный путь к ним. Например, скопируйте сертификат CA в папку /usr/lib/mozilla/certificates:
cp ~/easy-rsa-ca/ca.crt /usr/lib/mozilla/certificates/losst.crt
Поддерживаются как ASCII сертификаты (CRT/PEM), так и двоичные (DER). Затем создайте файл политики со следующем содержимым:
sudo vi /usr/lib/firefox/distribution/policies.json
{
"policies": {
"ImportEnterpriseRoots": true,
"Certificates": {
"Install": [
"losst.crt",
]
}
}
}
Перезапустите браузер и после этого Firefox должен начать видеть ваш сертификат.