Перейти к содержимому

Как установить сертификат на линукс

  • автор:

Как установить сертификат на линукс

Как в Linux/Unix установить сертификаты?

Основной утилитой для работы с сертификатами является certmgr (лежит в /opt/cprocsp/bin/<архитектура>). К ней есть man:
man 8 certmgr

Установка корневого сертификата:
certmgr -inst -store root -file <путь к файлу с сертификатом>

Установка личного сертификата:
certmgr -inst -file <путь к файлу с сертификатом> -cont <имя контейнера>

Установка стороннего сертификата:
certmgr -inst -file <путь к файлу с сертификатом>

Записки IT специалиста

Установка российских корневых сертификатов в Debian и Ubuntu

  • Автор: Уваров А.С.
  • 24.10.2022

install-RU-CA-certificates-linux-000.pngНачиная с сентября 2022 года многие российские сервисы начинают переходить на TLS-сертификаты, выпущенные российским удостоверяющим центром. В связи с чем пользователи могут испытывать проблемы при доступе к таким сайтам. Чтобы этого избежать, нам потребуется установить в систему корневые сертификаты удостоверяющего центра, что позволит системе и браузерам доверять выпущенным им сертификатам. В данной статье мы расскажем, как это сделать в среде операционных систем Ubuntu или Debian, а также в любых основанных на них дистрибутивах.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Сразу развеем некоторые досужие домыслы, что мол установка такого сертификата дает возможность перехватывать и расшифровывать весь пользовательский трафик с ПК. Ничего подобного, корневой сертификат только лишь позволяет проверить подлинность выпушенных этим удостоверяющим центром сертификатов, чтобы расшифровать трафик нам потребуется закрытый ключ владельца сертификата, который хранится у него локально и никто, включая удостоверяющий центр, доступа к нему не имеет.

Кроме того, современные алгоритмы шифрования используют одноразовые сеансовые ключи, формируемые с использованием протокола Диффи — Хеллмана, что не позволяет расшифровать сессию даже имея на руках закрытый ключ. Поэтому беспокоиться не стоит, это просто один из множества корневых сертификатов, установленных в вашей системе. Просто большинство из них входит в состав ОС и при этом регулярно обновляется, просто этот процесс скрыт от глаз пользователя.

Установка сертификатов в системное хранилище

Прежде всего скачаем сами сертификаты, для этого перейдем в домашнюю директорию:

И выполним команды:

Это официальные ссылки для скачивания сертификатов с портала Госуслуг.

Затем повысим права до суперпользователя:

В Debian, если не установлен sudo, используйте:

Затем создадим директорию:

И скопируем в нее сертификаты:

Затем установим их командой:

Ключ -v указывает вывести на экран подробности выполнения команды. В выводе можно увидеть, что нужные сертификаты были установлены.

install-RU-CA-certificates-linux-001.png

Теперь можем проверить, что система доверяет сертификатам выпущенным данным УЦ, для этого попробуем соединиться с сайтом Сбербанка, который одним из первых перешел на отечественные сертификаты:

Если вы увидите следующий вывод, то все в порядке:

install-RU-CA-certificates-linux-002.png

Часть строки HttpOnly; secure указывает на то, что мы успешно установили защищенное соединение с сайтом.

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

Браузер Mozilla Firefox не использует системное хранилище сертификатов, поэтому если мы хотим работать с такими сайтами с его помощью, то нам нужно добавить сертификат в хранилище браузера. Для этого перейдите Настройки — Приватность и защита — Сертификаты — Просмотр сертификатов и на закладке Центры сертификации выполните импорт скачанных сертификатов.

install-RU-CA-certificates-linux-003.png

Теперь проблем в этом браузере не возникнет, для проверки посетим тот же сайт Сбербанка.

install-RU-CA-certificates-linux-004.png

На приведенном скриншоте видно, что сайт действительно использует сертификат от Минцифры, также обратите внимание на аббревиатуру ECDHE ниже, которая обозначает, что используются несохраняемые одноразовые сеансовые ключи на основе протокола Диффи-Хеллмана на эллиптических кривых.

Установка сертификатов в Chromium и основанные на нем браузеры

Также, как и Firefoх, Chromium и основанные на нем браузеры не используют системное хранилище и требуют отдельной установки сертификатов. Мы будем рассматривать установку на примере Chromium, в других браузерах путь к настройкам может отличаться. Переходим в Настройки — Конфиденциальность и безопасность — Безопасность — Настроить сертификаты. Затем на закладке Центры сертификации производим импорт сертификатов.

install-RU-CA-certificates-linux-005.png

Затем точно также можем посетить сайт Сбербанка и убедиться, что сертификаты установлены успешно.

install-RU-CA-certificates-linux-006.png

Как видим, установить российские корневые сертификаты в Linux достаточно несложно. При этом вам не обязательно устанавливать их во все хранилища, можно обойтись только необходимыми, исходя из рабочих потребностей.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Или подпишись на наш Телеграм-канал: Подпишись на наш Telegram-канал

How to install an SSL Certificate on Ubuntu Server?

Dinu Gitlan

In this tutorial, you will learn how to generate a CSR code for Ubuntu and how to install an SSL certificate on Ubuntu with Apache. The later paragraphs include a brief history of Ubuntu and SSL buying recommendations for an Ubuntu Server.

Table of Contents

How to Generate a CSR code in Ubuntu Server?

We’ll begin with CSR (Certificate Signing Request) code generation. A CSR is a request sent to a Certificate Authority to apply for a digital certificate. On an Ubuntu-based Apache server, you can create the CSR via the secure shell (SSH) protocol. Alternatively

  1. Use the SSH command to log into your server
  2. At the prompt enter the following command to create the private key and CSR files:
    openssl req -new -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr
  3. Don’t forget to replace mydomainwith your actual domain name. For example, if your domain name is example.com, you must type example.key and example.csr
  4. Now, you need to provide up to date details about your company to the CA. Follow the examples below:
  • Country Name — enter the two-letter code of the country where your business is legally registered, i.e. “US” if you’re located in the United States. Check this link to find the two-letter codes for each country
  • State or Province — submit the full name of the state or province where your company is registered
  • City or Locality — submit the full name of the city where your organization is registered
  • Organization Name — For Business Validation and Extended Validation certificates, enter your organization’s legal name (e.g. GPI Holding LLC). For Domain Validation certificates, type your full name
  • Organizational Unit Name — Usually it’s the department responsible for SSL management. For example, “IT” or “Web Administration”
  • Common Name — enter the FQDN (fully qualified domain name) you want to secure, for example, ssldragon.com.
  • Email Address — enter a valid email address
  • A challenge password — this extra attribute is optional. You may create a password to secure your SSL certificate further. Make sure you remember it.
  • An optional company name — this field is self-explanatory. You may add an optional name for your company

Congratulations! You’ve successfully created the CSR key. The newly generated files are yourdomain.csr, and yourdomain.key. You can use the “ls” command to find them in your working directory. Open a text editor such as Notepad to copy the CSR file and submit to the CA during your order process.

Install an SSL Certificate on Ubuntu Server

Step 1: Copy your certificate files to your server.

Once you’ve completed the validation process, the Certificate Authority will send the SSL certificate files via email. Download the archived folder, and extract the server and intermediate certificates or CA Bundle. Upload them to the Ubuntu server in a specific directory.

You should have the following files ready for upload:

  • certificate.crt
  • ca-bundle.crt
  • private.key

Copy your certificate files to a directory on your server. By default, this directory is /etc/ssl/ for your certificate.crt and ca_bundle.crt files, and /etc/ssl/private/ for your private.key file.

Step 2: Edit the Apache.config file.

Its usual location is in /etc/apache2/sites-enabled/your_site_name. If you can’t locate it there, run the following command: sudo a2ensite your_site_name

Open the Apache.config file with a text editor of your choice.

Note: To access your site via both HTTP and HTTPS, you must separate two different files in the sites-enabled folder. The HTTP file is for port 80, while the HTTPS one is for port 443.

Step 3: Configure the Virtual Host block

This action will make your site accessible only via the secure HTTPS protocol. Your default Virtual Host block contains the following lines of code:
<VirtualHost *:443>
DocumentRoot /var/www/site
ServerName www.yourdomain.com
SSLEngine on
SSLCertificateFile /path/to/yourdomain.crt
SSLCertificateKeyFile /path/to/yourdomain.key
SSLCertificateChainFile /path/to/yourdomain.crt
</VirtualHost>

Adjust the Virtual Host block according to your SSL certificate details:

  • In the SSLCertificate File parameter update the location of your SSL certificate file
  • In the SSLCertificateKeyFile parameter, enter the location of the private key file you created during the CSR generation.
  • In the SSLCertificateChainFile parameter, provide the location of the intermediate certificate file

Note: If the SSLCertificateFile directive doesn’t work, use the SSLCACertificateFile instead.

Verify the Virtual Host block, and save the .config file

Step 4: Test your new .config file

Run the apachectlConfigtest command to test your new .config file for potential errors. If something is wrong with your configuration, you may need to go back and repeat the previous installation steps. If all is fine, continue with the last step.

Step 5: Restart the Apache

Use the apachectl stop and apachectl start commands to restart the Apache.

Congratulations! You have successfully installed your SSL certificate on your Ubuntu server. To further test your SSL installation, and receive instant status reports, use these highly recommended SSL tools.

Ubuntu Server History and Versions

Ubuntu (pronounced oo-boon-too) is a free and open-source operating system and Linux distribution created from the Debian codebase. The first official release was on October 20, 2004. Today, Ubuntu is available in three official releases and more than 55 languages:

  • Ubuntu desktop (personal computers)
  • Ubuntu Server (servers and cloud)
  • Ubuntu Core (Internet of Things, devices, and robots).

The word “Ubuntu” comes from the Zulu/Xhosa languages and literally means “human-ness” which can also be translated as “humanity.” The Ubuntu OS is named after the South African philosophy of Ubuntu or Ubuntuism.

Since its first release, Ubuntu has grown into a stable and secure platform with millions of users around the world. The company behind Ubuntu, Canonical Ltd, provides regular releases of Ubuntu every six months, and long-term support releases (LTS) every two years. Each release has its own, alternative code name that consists of an adjective and an animal. Below you can find a log of all the Ubuntu versions:

  • Ubuntu 14.04 LTS — code-named Trusty Thar (supported until 2019–04)
  • Ubuntu 14.10 — code-named Utopic Unicorn (no longer supported)
  • Ubuntu 15.04 — code-named Vivid Vervet (no longer supported)
  • Ubuntu 15.10 — code-named Willy Werewolf (no longer supported)
  • Ubuntu 16.04 LTS — code-named Xenial Xerus (supported until 2021–04)
  • Ubuntu 16.10 — code-named Yakkety Yak (no longer supported)
  • Ubuntu 17.04 — code-named Zesty Zapus (no longer supported)
  • Ubuntu 20.04 LTS — code-named Focal Fosa (supported until 2025
  • Ubuntu 22.04 LTS — code-named Jammy Jellyfish (supported until 2027)

1. How do I know if an SSL certificate is installed on Ubuntu?

You can check if an SSL certificate is installed on Ubuntu via the following command:

2. Where do I put the SSL certificate in Ubuntu?

The path for SSL certificates is the /etc/ssl/certs/ directory on your server. Your private key files go to /etc/ssl/private. These are default locations, but you can change them depending on your configuration.

3. Where is the Apache .config file located?

By default, the Apache .config file resides in /etc/apache2/sites-enabled/your_site_name. If you don’t find it there, run the following command:

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

  1. Открыть «Инструменты КриптоПро», вкладка «Сертификаты»;
  2. Нажать «Импортировать ключи».
    По умолчанию при импорте ключ копируется на ваш ПК. Если требуется использовать сертификат на съёмном носителе, его нужно скопировать на носитель и после установить;

Установка .cer (только открытая часть)
  1. Открыть «Инструменты КриптоПро», вкладка «Сертификаты»;
  2. Нажать «Показать расширенные» и поставить галку «Отключить автовыбор хранилища (использовать текущее)».
    Если галку не ставить, «КриптоПро» автоматически будет определять хранилище для сертификатов. Личные сертификаты попадут в хранилище «Другие пользователи»;

Установка из .key (скопированные с носителя 6 файлов ключа)

    Скопировать папку с файлами в папку локального хранения контейнеров «КриптоПро», по умолчанию «/var/opt/cprocsp/keys/имя_пользователя»;

Установка сертификата с токена\флэш-накопителя
  1. Подключить накопитель или токен к вашему ПК;
  2. В «Инструментах КриптоПро» перейти на вкладку «Контейнеры» и выбрать нужный контейнер на носителе;
  3. Нажать «Установить сертификат»;

Установка открытой части в контейнер закрытого ключа

Выполнить команду:/opt/cprocsp/bin/amd64/certmgr -inst -inst_to_cont -ask-container -pin «пин-код токена» -file “путь к файлу сертификата”

Пример:/opt/cprocsp/bin/amd64/certmgr -inst -inst_to_cont -ask-container -pin «12567» -file /path/to/certificate.cer

Установка корневых сертификатов и списков отзыва

Установка корневого сертификата удостоверяющего центра

Вам необходимо воспользоваться любым из способов:

Через терминал

Выполнить команду: /opt/cprocsp/bin/amd64/certmgr -inst -cert -file

/Загрузки/.cer -store uRoot

Через графический интерфейс

    Открыть «Инструменты КриптоПро», нажать «Показать расширенные»;

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

From $34/Day — Car Rental HPN With Zero Terminal Shuttle