Установка сертификатов на 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 тоже своё хранилище, и импорт делается через интерфейс:
- «Настройки» → в поиске введите
сертификат→ «Просмотр сертификатов…». - Вкладка «Центры сертификации» → «Импортировать…».
- Выберите файл, поставьте флажок «Доверять при идентификации веб-сайтов» → «ОК».
- Повторите для всех файлов, имя которых начинается с
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