Linux, Chrome, mTLS

Apr 30, 2024 00:29


Иногда хочется mTLS. Если совсем грубо, то это когда не только сервер предъявляет клиенту свой X509-сертификат, но и клиент серверу (на самом деле это только частный случай, но обычно делают именно так).

В разных браузерах хранилище пользовательских сертификатов реализовано по-разному. Например, у Mozilla Firefox оно своё собственное, а всякие там Edge и прочие Chrome используют system-wide хранилище.

Под форточками понятно как оно работает. Есть всякие API, криптопровайдеры, оснастки, powershell и прочая чухня. С Firefox-ом тоже понятно: сертификат импортируется непосредственно через его интерфейс. А применительно к связке Google Chrome + Linux немного неочевидно куда идти и что делать.

Решение такое.
  1. Убедиться что установлен пакет "libnss3-tools".
  2. Импортировать сертификат в пользовательское хранилище: "pk12util -d sql:$HOME/.pki/nssdb -i somefile.p12"
  3. Полностью перезапустить браузер (закрыть-открыть все его окна-процессы) если он работал.

Посмотреть какие сертфикаты уже находятся в хранилище можно командой
certutil -d sql:$HOME/.pki/nssdb -L

Всем годных браузеров.

x509, безопасность, linux, chrome, памятка

Previous post Next post
Up