Как добавить сертификат Центра Сертификации (CA) в доверенные в Linux
Как добавить сертификат Центра Сертификации (CA) в доверенные в Linux
Как добавить корневой сертификат в доверенные в Linux на уровне системы
Сертификат с расширением .crt можно открыть двойным кликом и просмотреть его содержимое:
Если вы работаете в системе от обычного пользователя (не root), то кнопка «Импортировать» будет недоступна.
Чтобы разблокировать кнопку «Импортировать», выполните следующую команду:
Данный способ может не сработать, поэтому рассмотрим, как добавить доверенные корневые центры сертификации в командной строке.
Суть метода очень проста:
- Добавить свой корневой CA сертификат в папку, предназначенную для таких сертификатов.
- Запустить программу для обновления общесистемного списка сертификатов.
Пути и команды в разных дистрибутивах Linux чуть различаются.
Просмотреть Subject всех корневых CA сертификатов можно уже знакомой командой:
Для демонстрации я добавлю сертификат с Common Name, включающим «HackWare», тогда для проверки, имеется ли сертификат с таким именем среди корневых CA, я могу использовать команду:
Для добавления своего корневого CA в доверенные в Debian, Kali Linux, Linux Mint, Ubuntu и их производных:
1. Проверьте, существует ли директория /usr/local/share/ca-certificates:
Если её ещё нет, то создайте:
Сертификат должен быть в формате PEM (обычно так и есть) и иметь расширение .crt — если расширение вашего сертификата .pem, то достаточно просто поменять на .crt.
2. Скопируйте ваш сертификат командой вида:
3. Запустите следующую команду для обновления общесистемного списка:
Проверим наличие нашего CA сертификата среди доверенных:
Сертификат успешно найден:
Чтобы его удалить:
Для добавления своего корневого CA в доверенные в Arch Linux, BlackArch и их производных:
1. Выполните команду вида:
2. Обновите общесистемный список доверенных CA:
Чтобы удалить этот сертификат:
Добавление сертификатов в базу данных NSS
Некоторые приложения используют базу данных NSS, и у вас может быть необходимость добавить доверенные CA в неё.
Последующие изменения повлияют только на приложения, использующие базу данных NSS и учитывающие файл /etc/pki/nssdb.
1. Сначала создайте структуру каталогов для системных файлов базы данных NSS:
Затем создайте новый набор файлов базы данных. Пароль нужен для того, чтобы базу данных могли редактировать только люди, которые его знают. Если все пользователи в системе (и с доступом к резервным копиям) заслуживают доверия, этот пароль можно оставить пустым.
2. Убедитесь, что файлы базы данных доступны для чтения всем:
Примечание: вышеприведённые инструкции применимы только в том случае, если пока не существует общесистемного набора файлов базы данных NSS. Если он уже существует, то важно знать пароль для этого набора баз данных (конечно, если он защищён паролем).
3. Теперь, когда доступны файлы базы данных NSS, добавьте сертификат в хранилище следующим образом:
Биты доверия, используемые в приведённом выше примере, помечают сертификат как надёжный для подписи сертификатов, используемых для связи SSL/TLS. Имя (указывается после опции -n), используемое в команде, можно выбрать любое, но убедитесь, что его легко отличить от других сертификатов в магазине.
Аналогичные инструкции можно использовать для включения сертификата только в базу данных NSS конкретного пользователя:
Удаление из файлов базы данных NSS
Чтобы удалить сертификат из любой базы данных NSS, используйте команду certutil следующим образом. В этом примере используется общесистемное расположение базы данных NSS, но его можно легко изменить на пользовательское
Как добавить корневой сертификат в доверенные в Linux в веб браузеры
Chrome, Chromium, Firefox и созданные на их основе веб браузеры доверяют корневым сертификатам, установленным на уровне системы. То есть вам достаточно добавить в доверенные CA сертификат как это показано в предыдущем разделе.
Причём эти браузеры хотя и используют NSS, они игнорируют общесистемные сертификаты NSS, которые можно добавить в файл /etc/pki/nssdb!
Тем не менее приложения, которые используют NSS (такие как Firefox, Thunderbird, Chromium, Chrome) хранят свои списки доверенных сертификатов в файлах cert9.db. Чтобы добавить свой сертификат в каждый из этих файлов можно использовать скрипт.
Сохранить следующий код в файл CAtoCert9.sh:
В этом файле измените значение certfile на имя файла вашего сертификата и значение certname на имя вашего сертификата, сохраните и закройте файл.
Затем запустите его следующим образом:
В результате в домашней папке пользователя будут найдены все файлы cert9.db и в каждый из них будет добавлен указанный CA сертификат.
Вы можете добавить CA сертификаты в графическом интерфейсе каждого браузера.
- В настройках Chrome: Конфиденциальность и безопасность → Безопасность → Настроить сертификаты → Центры сертификации
- В настройках Chromium: Конфиденциальность и безопасность (выбрать «Ещё») → Настроить сертификаты → Центры сертификации
Нажмите кнопку «Импорт»:
Выберите файл с сертификатом.
Укажите, какие полномочия вы даёте этому сертификату:
- В настройках Firefox: Приватность и Защита → Сертификаты → Просмотр сертификатов → Центры сертификации:
Нажмите кнопку «Импортировать»:
Выберите файл с сертификатом.
Укажите, какие полномочия вы даёте этому сертификату:
Для глубокого понимания OpenSSL смотрите также полное руководство: «OpenSSL: принципы работы, создание сертификатов, аудит».
Установка сертификатов в операционную систему
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.
Сообщения: 70
Благодарности: 10
Спасибо за ссылку.
Нашёл вот такое описание Программа диспетчера сертификатов
Нашёл саму программу CertMgr.exe, НО
незарегистрированным пользователям её скачать никак
а то, что скачивается с русского сайта: http://www.cryptopro.ru/cryptopro/do. es/CertMgr.exe не понимает ключи командной строки.
Сообщения: 36085
Благодарности: 6532
Конфигурация компьютера | |
Ноутбук/нетбук: Lenovo ThinkPad W530 24385AU (i7-3740QM 2.7GHz, 24GB RAM, Samsung 840 Pro 256GB + HDD 750GB) | |
ОС: Windows 10 Pro x64 Release Preview | |
Прочее: На пенсии: HP Pavilion dv7t (17.3», i7-2630QM, HD 6770M 1Gb, 8Gb RAM) |
——-
Канал Windows 11, etc | Чат @winsiders
Сообщения: 8166
Благодарности: 2777
Конфигурация компьютера | |
Процессор: Intel Pentium Dual-Core Mobile T2390 1866 МГц | |
Материнская плата: Quanta 30CC | |
Память: 2 × 512МБ DDR2-666 SDRAM (ProMos/Mosel Vitelic) (1 гиг) | |
HDD: TOSHIBA MK1646GSX 160 гиг sata | |
Видеокарта: Mobile GM965/GL960 Express Integrated Graphics Controller | |
Звук: 82801H (ICH8 Family) HD Audio Controller , Realtek ALC268 | |
Блок питания: 65 w 2008 г | |
CD/DVD: TSSTcorp CDDVDW TS-L632N | |
Монитор: LG Philips LP154WX4-TLC8 (LPL 0120) 15.4″ | |
ОС: Windows XP pro x32 | |
Индекс производительности Windows: None | |
Прочее: Hewlett-Packard HP Pavilion dv6700 Notebook PC |
Связанный вопрос — как добавлять систему подписанные каталоги безопасности ( *.cat файлы ) ?
если речь идёт о дистрибутиве, то понятно — закидыванием в svcpack, а на живой системе?
ломовой подход
certmgr -add bootvid.cat -s ROOT
не работает, хотя и пишет что CertMgr Succeeded , но bootvid.cat не появляется в c:WINDOWSsystem32CatRoot
до этого я пользовался варварским методом — ручным копированием cat файла и удалением файлов с кешами подписей, с последующим пересозданием этих кешей с учётом уже скопированного .cat файла, но это как то криво, хотя у меня работает без сбоев.
Хочется какого нибудь правильного, цивильного способа.
Ошибка «Сертификат безопасности сайта не является доверенным». Как ее исправить?
Доброго дня!
Я думаю, что почти каждый пользователь (особенно в последнее время) сталкивался с ошибкой в браузере о том, что сертификат такого-то сайта не является доверенным, и рекомендацией не посещать его.
С одной стороны это хорошо (все-таки и браузер, и вообще популяризация подобных сертификатов — обеспечивает нашу безопасность), но с другой — подобная ошибка иногда всплывает даже на очень известных сайтах (на том же Google). 👋
Суть происходящего, и что это значит?
Дело в том, что когда вы подключаетесь к сайту, на котором установлен протокол SSL, то сервер передает браузеру цифровой документ ( сертификат ) о том, что сайт является подлинным (а не фейк или клон чего-то там. ). Кстати, если с таким сайтом все хорошо, то браузеры их помечают «зеленым» замочком напротив URL-строки: на скрине ниже показано, как это выглядит в Chrome.
Однако, сертификаты могут выпускать, как всем известные организации (Symantec, Rapidssl, Comodo и др.) , так и вообще кто-угодно. Разумеется, если браузер и ваша система «не знает» того, кто выпустил сертификат (или возникает подозрение в его правильности) — то появляется подобная ошибка.
Т.е. я веду к тому, что под раздачу могут попасть как совсем белые сайты, так и те, которые реально опасно посещать. Поэтому, появление подобной ошибки это повод внимательно взглянуть на адрес сайта.
Ну а в этой статье я хочу указать на несколько способов устранения подобной ошибки, если она стала появляться даже на белых и известных сайтах (например, на Google, Яндекс, ВК и многих других. Их же вы не откажетесь посещать? 😉).
Как устранить ошибку
👉 1) Обратите внимание на адрес сайта
Первое, что сделайте — просто обратите внимание на адрес сайта (возможно, что вы по ошибке набрали не тот URL).
Также иногда такое происходит по вине сервера, на котором расположен сайт (возможно, вообще, сам сертификат просто устарел, ведь его выдают на определенное время). Попробуйте посетить другие сайты, если с ними все «OK» — то вероятнее всего, что проблема не в вашей системе, а у того конкретного сайта.
Пример ошибки «Сертификат безопасности сайта не является доверенным»
Однако, отмечу, что если ошибка появляется на очень известном сайте, которому вы (и многие другие пользователи) всецело доверяете — то высока вероятность проблемы в вашей системе.
👉 2) Проверьте дату и время, установленные в Windows
Второй момент: подобная ошибка может выскакивать, если у вас в системе неверно задано время или дата . Для их корректировки и уточнения достаточно щелкнуть мышкой по «времени» в панели задач Windows (в правом нижнем углу экрана).
📌В помощь!
Как настроить дату и время в Windows 10/11: см. пошаговую инструкцию
Настройка даты и времени
После установки правильного времени, перезагрузите компьютер и попробуйте заново открыть браузер и сайты в нем. Ошибка должна исчезнуть.
Также обращаю внимание на то, что, если у вас постоянно сбивается время — вероятно у вас села батарейка на материнской плате. Представляет она из себя небольшую «таблетку», благодаря которой компьютер помнит введенные вами настройки, даже если вы его отключаете от сети (например, те же дата и время как-то высчитываются?).
Батарейка на материнской плате ПК
👉 3) Попробуйте провести обновление корневых сертификатов
Еще один вариант, как можно попробовать решить эту проблему — установить обновление корневых сертификатов. Обновления можно скачать на сайте Microsoft для разных ОС. Для клиентских ОС (т.е. для обычных домашних пользователей) подойдут вот эти обновления: https://support.microsoft.com/ (ссылка ну нужную страничку).
👉 4) Установка «доверенных» сертификатов в систему
Этот способ хоть и рабочий, но хотелось бы предупредить, что он «может» стать источником проблем в безопасности вашей системы. По крайней мере, прибегать к этому советую только для таких крупных сайтов как Google, Яндекс и т.д.
Для избавления от ошибки, связанной с недостоверностью сертификата, должен подойти спец. пакет GeoTrust Primary Certification Authority .
Скачать GeoTrust Primary Certification Authority можно с сайта: http://www.geotrust.com/resources/root-certificates/index.html
Кстати, на этой страничке расположено еще несколько сертификатов, их также можно до-установить в систему.
*
Кстати, чтобы скачать GeoTrust Primary Certification Authority:
- нажмите правой кнопкой мышки по ссылке download и выберите вариант «сохранить ссылку как. «;
Сохранить ссылку как.
Файл с расширением PEM
Теперь необходимо скачанный сертификат установить в систему. Как это делается, по шагам расскажу чуть ниже:
- сначала нажимаем сочетание кнопок Win+R , и вводим команду certmgr.msc , жмем OK;
- должен открыться центр сертификатов в Windows. Необходимо раскрыть вкладку «Доверенные корневые центры сертификации/сертификаты», щелкнуть по ней правой кнопкой мышки и выбрать «Все задачи — импорт».
Мастер импорта сертификатов
Указываем сертификат, который загрузили
Поместить сертификаты в доверенные. Далее
👉 5) Обратите внимание на антивирусные утилиты
В некоторых случаях эта ошибка может возникать из-за того, что какая-нибудь программа (например, антивирус) проверяет https трафик. Это видит браузер, что пришедший сертификат не соответствует адресу, с которого он получен, и в результате появляется предупреждение/ошибка.
Поэтому, если у вас установлен антивирус/брандмауэр, проверьте и на время отключите настройку сканирования https трафика (см. пример настроек AVAST на скрине ниже). 👇
Avast — основные настройки (отключение сканирование https трафика)
Либо, как вариант, на время удалите его или полностью отключите!
Управление экранами Avast — отключить на 10 минут
Чтобы открыть проблемный сайт — загрузите браузер MX5 (я о нем рассказывал в заметке о флеш-играх). При попытке перейти на «проблемный» сайт в нем — он вас предупредит, что это не безопасно, но если вы подтвердите свое намерение — н загрузит страничку!
Записки IT специалиста
Создание ключей и сертификатов для OpenVPN при помощи Easy-RSA 3
- Автор: Уваров А.С.
- 04.12.2019
OpenVPN — популярная технология для создания защищенных частных сетей (VPN), использующих аутентификацию и шифрование на основе протокола SSL/TLS. Для упрощения процедуры создания необходимых ключей и сертификатов традиционно используется утилита Easy-RSA, которая позволяет легко управлять локальным центром сертификации (CA) инфраструктуры открытых ключей (PKI). Сегодня мы поговорим о работе с новой версией утилиты Easy-RSA 3, которая серьезно отличается по синтаксису от используемой ранее Easy-RSA 2 и входит в состав новых дистрибутивов Debian и Ubuntu.
На первый взгляд может показаться, что разработчики Easy-RSA серьезно все поменяли, но это не так, если вы понимаете, как устроена инфраструктура открытых ключей, то вам будет ясно, что работа утилиты изменилась только по форме, но не по сути. Она стала более целостной и простой в использовании, но в тоже время приобрела ряд новых функции, свойственных более «взрослым» продуктам. В настоящий момент Easy-RSA 3 входит в состав Debian 10, а также Ubuntu 18.10 и новее.
Установка Easy-RSA и создание центра сертификации
Для установки Easy-RSA 3 выполним:
После чего убедимся, что установлена именно третья версия утилиты:
Обычно затем директорию с easy-rsa копируют в конфигурационную папку OpenVPN, но на наш взгляд CA лучше располагать отдельно, поэтому мы скопируем директорию просто в /etc, однако это ни не что не влияет, и вы можете поступить по своему разумению.
Затем изменим рабочую директорию на скопированную нами папку:
Если вас устраивают параметры по умолчанию, то следующий шаг можно пропустить и сразу перейти к созданию инфраструктуры PKI. Однако мы советуем потратить немного времени на тонкую настройку вашего CA.
Прежде всего скопируем шаблон файла настроек:
и откроем файл vars на редактирование. Строки вида #set_var содержат значения по умолчанию, для их именения строку нужно раскомментировать и указать собственное значение. Начнем с опции EASYRSA_DN, она предусматривает два режима: упрощенный cn_only, при котором сертификат содержит только CN (имя того, кому выдан сертификат) и традиционный org, при котором заполняются все реквизиты организации. Для OpenVPN можно использовать любой режим. Мы установим традиционный:
После чего раскомментируйте и заполните блок ниже своими данными (в примере указаны наши):
Заметьте, что если вы оставили cn_only, то редактировать вышеуказанные опции не имеет смысла.
Параметр EASYRSA_KEY_SIZE указывает размер ключа, на сегодняшний день безопасным считается размер начиная с 2048, если вы ставите на первое место безопасность, то можете увеличить его до 3072 или 4096. Если криптографическая стойкость не играет роли, например, туннель будет использован для доступа в интернет и предполагается использование слабых устройств, то можно уменьшить размер ключа до 1024.
Опции EASYRSA_CA_EXPIRE и EASYRSA_CERT_EXPIRE задают срок действия корневого сертификата CA и сертификатов пользователей (сервера и клиентов), их значения установлены в днях как 3650 (10 лет) и 1080 (5 лет), опция EASYRSA_CERT_RENEW задает количество дней до истечения сертификата, когда становится доступным его продление, по умолчанию это 30 дней. При необходимости вы можете изменить эти значения.
Сохраним внесенные изменения. Теперь инициализируем наш CA и выпустим корневую пару ключей. Обратите внимание, что данные действия следует выполнять единожды, повторное выполнение указанных команд уничтожит существующий CA и потребует повторного создания всех ключей и сертификатов.
Данная команда инициализирует новую структуру центра сертификации с очисткой всех данных. После чего создадим файл для генерации случайных данных:
и активируем наш CA:
При создании закрытого ключа центра сертификации вам будет предложено ввести пароль, не следует пренебрегать этой возможностью, так как закрытый ключ — основа вашей инфраструктуры открытых ключей и его компрометация приведет к компрометации всех выпущенных ключей и сертификатов. Также не забудьте указать собственное наименование центра сертификации в опции Common Name.
После выполнения этих команд будет выполнено создание структуры директорий CA, публичный сертификат центра сертификации ca.crt вы сможете найти в директории pki, а закрытый ключ ca.key в pki/private. Закрытый ключ является секретным и не при каких обстоятельствах не должен покидать свое расположение и тем более не должен передаваться по открытым каналам связи, доступ третьих лиц к закрытому ключу также следует ограничить.
Также не забудем сформировать файл параметров Диффи-Хеллмана dh.pem, он также будет расположен в директории pki:
На этом создание центра сертификации (CA) можно считать законченным.
Создание ключа и сертификата для сервера
В Easy-RSA 3 все «по-взрослому», сначала нам нужно создать запрос на сертификат:
где ovpn-server — имя вашего сервера, nopass означает, что закрытый ключ следует создать без пароля. При выполнении данной команды будет создан запрос на сертификат и сгенерирован закрытый ключ сервера ovpn-server.key, который будет располагаться в pki/private. Закрытый ключ является секретным и не должен передаваться по открытым каналам связи и доступ к нему также должен быть ограничен.
Для выпуска сертификата выполните:
Опция server обозначает выпуск сертификата для сервера. Для подтверждения выпуска вам нужно будет явно выразить свое согласие указав yes в ответ на соответствующий запрос, любый иные действия приведут к отмене действия. Затем потребуется ввести пароль закрытого ключа центра сертификации.
Выпущенные сертификаты будут располагаться в pki/issued.
Теперь скопируем необходимые сертификаты и ключи в конфигурационную директорию OpenVPN, предварительно создав там папку keys:
Дальнейшая настройка OpenVPN-сервера ничем не отличается от описанной нами ранее, и вы можете воспользоваться любой нашей инструкцией, смотрите блок Дополнительные материалы внизу статьи.
Создание ключа и сертификата для клиента
Точно также начнем с формирования запроса на сертификат:
где ivanov_ivan — имя клиента, а nopass предписывает создать закрытый ключ без пароля. Мы рекомендуем давать клиентам осмысленные имена, чтобы потом не пришлось долго гадать, кто именно скрывается под псевдонимом типа client123.
На основании запроса выпустим сертификат:
В данном случае используется опция client для указания формирования клиентского сертификата, вам также потребуется явно подтвердить действие и указать пароль от закрытого ключа CA.
Для передачи на клиент вам потребуется скопировать в доступную пользователю директорию закрытый ключ, сертификат клиента и сертификат CA. В нашем случае файлы будут скопированы в домашнюю директорию пользователя andrey.
Затем изменим их владельца, чтобы файлы можно было скопировать, подключившись к системе с правами пользователя:
Закрытый ключ пользователя также является секретным и следует исключить его передачу по открытым каналам.
Списки отзыва и отзыв сертификатов
Если вы используете OpenVPN для организации связи между офисами или доступа в интернет, то вряд ли у вас возникнет потребность в отзыве сертификата. Другое дело, если вы предоставляете удаленный доступ к корпоративной сети с домашних ПК сотрудников, подрядчикам или аутсорсерам. Здесь может возникнуть масса ситуаций, когда доступ отдельных лиц следует прекратить: сотрудник уволился, истек срок договора с подрядчиком, сменили аутсорсера и т.д. и т.п.
Прежде всего создадим список отозванных сертификатов (CRL):
Затем создадим символьную ссылку на список в директории с ключами OpenVPN:
И внесем в конфигурационный файл сервера OpenVPN следующую строку:
После чего сервер OpenVPN потребуется перезапустить.
Теперь отзовем какой-либо сертификат:
Где horns_and_hooves — имя сертификата клиента (СN), после отзыва следует повторно опубликовать список отозванных сертификатов:
Посмотреть список сертификатов можно командой:
Действующие сертификаты имеют статус V в начале строки, отозванные — R.
Как видим, работа с Easy-RSA 3 не представляет каких-либо сложностей и надеемся, что данная статья будет вам полезна.
Дополнительные материалы:
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал: