База знаний
Сертификаты Компании

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

Системное хранилище, отдельно Chrome и Firefox — у них хранилища свои

Порядок проверен на Ubuntu 24.04, подходит и для других версий, и для Debian. Займёт 5 минут. Понадобится sudo.

Важно

В Linux три независимых хранилища: системное, у Chrome своё и у Firefox своё. Шаг 2 закрывает системное — этого достаточно для curl, git, скриптов и большинства программ. Для браузеров нужны шаги 3 и 4.

Шаг 1. Скачайте архив

Внутри шесть файлов .crt и скрипт для Windows — он здесь не нужен, просто не обращайте на него внимания.

Шаг 2. Системное хранилище

Откройте терминал (Ctrl+Alt+T) и вставьте блок целиком:

cd ~/Downloads
unzip -o certs.zip -d certs
sudo cp certs/*.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates

Последняя команда напечатает 6 added — это и есть наши сертификаты.

Проверка:

ls -1 /etc/ssl/certs | grep -E 'corp-|gov-'

Шаг 3. Chrome и Chromium

У Chrome собственное хранилище, системные сертификаты он не читает:

sudo apt install -y libnss3-tools
mkdir -p ~/.pki/nssdb
certutil -d sql:$HOME/.pki/nssdb -N --empty-password 2>/dev/null

cd ~/Downloads/certs
for f in *.crt; do
    certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n "${f%.crt}" -i "$f"
done

certutil -d sql:$HOME/.pki/nssdb -L

Последняя команда покажет список — в нём должны быть все шесть. После этого полностью закройте Chrome и откройте заново.

Примечание

Строка certutil ... -N --empty-password создаёт хранилище, если его ещё нет. Если оно уже есть, команда напишет, что база существует — это нормально, просто идите дальше.

Шаг 4. Firefox

У Firefox тоже своё хранилище, и импорт делается через интерфейс:

  1. «Настройки» → в поиске введите сертификат«Просмотр сертификатов…».
  2. Вкладка «Центры сертификации»«Импортировать…».
  3. Выберите файл, поставьте флажок «Доверять при идентификации веб-сайтов»«ОК».
  4. Повторите для всех файлов, имя которых начинается с corp-root и gov-root — остальные подтянутся по цепочке.

Шаг 5. Проверьте

Подставьте адрес любого внутреннего ресурса:

curl -sI https://внутренний-ресурс.example.com | head -1

Ответ вида HTTP/2 200 означает, что системное хранилище настроено верно. Если видите SSL certificate problem — вернитесь к шагу 2.

Если не получилось

update-ca-certificates написал «0 added»

Файлы не попали в каталог. Проверьте ls /usr/local/share/ca-certificates/ — там должны быть шесть файлов с расширением .crt.

curl работает, а Chrome ругается

Chrome читает только своё хранилище — вернитесь к шагу 3. Если ставили Chrome из snap, хранилище лежит внутри снапа: путь будет ~/snap/chromium/current/.pki/nssdb, подставьте его в команды вместо ~/.pki/nssdb.

certutil: command not found

Не установлен пакет libnss3-tools — первая строка шага 3. Если apt недоступен, поставьте пакет через корпоративное зеркало.

unzip: command not found
sudo apt install -y unzip
Нужно удалить сертификаты
cd /usr/local/share/ca-certificates
sudo rm -f corp-*.crt gov-*.crt
sudo update-ca-certificates --fresh