bg-tutorials

Как установить SSL-сертификат в Linux

В этом руководстве вы узнаете, как установить SSL-сертификат на Linux с веб-сервером Apache (httpd).

В примерах используется Red Hat Enterprise Linux (RHEL) и его близкие родственники (Rocky Linux, AlmaLinux, CentOS, Fedora), где Apache представлен пакетом httpd, а конфигурация хранится в /etc/httpd/. В заключительном разделе приведены рекомендации по выбору SSL для серверов Red Hat Linux.

Создание CSR на Linux

Если вы уже создали CSR и получили сертификат, переходите сразу к разделу об установке.

CSR (Certificate Signing Request) — это небольшой блок закодированного текста, содержащий информацию о вашем домене, а для бизнес-сертификатов — и о вашей организации. Создание CSR является обязательным этапом процесса заказа SSL; каждый коммерческий центр сертификации (CA) требует его перед выпуском сертификата. У вас есть два варианта:

Отправьте CSR в центр сертификации при оформлении заказа. После того как CA проверит его и выпустит ваш SSL-сертификат, переходите к установке, описанной ниже.

Установка SSL-сертификата на Linux (Red Hat / Apache)

После прохождения проверки центр сертификации отправит вам по электронной почте ZIP-архив с файлами для установки. Скачайте и распакуйте его. У вас должны быть:

  • yourdomain.crt — ваш основной SSL-сертификат (конечный сертификат).
  • yourdomain.ca-bundle — промежуточные сертификаты, также называемые пакетом CA (CA bundle).
  • yourdomain.key — закрытый ключ, который вы создали вместе с CSR.

Если ваш CA отправил сертификат в виде текста, а не файлов, откройте основной сертификат, скопируйте всё содержимое, включая строки ——BEGIN CERTIFICATE—— и ——END CERTIFICATE——, и сохраните его как yourdomain.crt. Сделайте то же самое для пакета CA. Выполните шаги ниже, чтобы завершить установку.

Шаг 1: Установка модуля SSL (mod_ssl)

В системах на базе Red Hat поддержка HTTPS обеспечивается пакетом mod_ssl. Установите его (в RHEL 8/9 и Fedora используйте dnf; в более старых версиях — yum):

sudo dnf install mod_ssl

Установка пакета также создаёт файл конфигурации SSL по умолчанию по пути /etc/httpd/conf.d/ssl.conf — именно туда вы добавите директивы для своего сертификата.

Шаг 2: Загрузка файлов сертификата на сервер

Скопируйте файлы в стандартные для Red Hat расположения сертификатов. Сертификаты помещаются в /etc/pki/tls/certs/, а закрытый ключ — в /etc/pki/tls/private/:

sudo cp yourdomain.crt /etc/pki/tls/certs/
sudo cp yourdomain.ca-bundle /etc/pki/tls/certs/
sudo cp yourdomain.key /etc/pki/tls/private/

Ограничьте доступ к закрытому ключу так, чтобы читать его мог только root:

sudo chmod 600 /etc/pki/tls/private/yourdomain.key

В Apache версии 2.4.8 и новее, что охватывает все поддерживаемые версии RHEL, объедините сертификат и пакет CA в единый файл полной цепочки (сначала конечный сертификат, затем промежуточные). Этого единственного файла достаточно для директивы SSLCertificateFile:

cat yourdomain.crt yourdomain.ca-bundle > yourdomain_fullchain.crt
sudo cp yourdomain_fullchain.crt /etc/pki/tls/certs/

Шаг 3: Настройка VirtualHost для HTTPS

Откройте файл конфигурации SSL в текстовом редакторе:

sudo nano /etc/httpd/conf.d/ssl.conf

Внутри блока VirtualHost для порта 443 настройте полную современную конфигурацию, как показано ниже. Скорректируйте пути и домен в соответствии с вашими файлами:

<VirtualHost *:443>
    ServerName  www.yourdomain.com
    DocumentRoot /var/www/html

    SSLEngine on

    # Apache 2.4.8+ : certificate + CA bundle in one full-chain file
    SSLCertificateFile    /etc/pki/tls/certs/yourdomain_fullchain.crt
    SSLCertificateKeyFile /etc/pki/tls/private/yourdomain.key

    # Recommended TLS hardening (2026)
    SSLProtocol         -all +TLSv1.2 +TLSv1.3
    SSLHonorCipherOrder off

    # Enable HSTS only after you confirm HTTPS works
    Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
</VirtualHost>
  • SSLCertificateFile: ваш файл полной цепочки (сертификат, за которым следуют промежуточные сертификаты). В Apache 2.4.8+ эта единственная директива заменяет устаревшую SSLCertificateChainFile.
  • SSLCertificateKeyFile: закрытый ключ, созданный вместе с CSR.

Устаревшие версии Apache (старше 2.4.8): если вы работаете с очень старым сервером, храните сертификат и цепочку раздельно, укажите в SSLCertificateFile путь к yourdomain.crt и добавьте директиву SSLCertificateChainFile /etc/pki/tls/certs/yourdomain.ca-bundle, указывающую на пакет CA, а не на ваш собственный сертификат.

Шаг 4: Перенаправление с HTTP на HTTPS

Чтобы посетители всегда попадали на защищённую версию вашего сайта, добавьте блок VirtualHost для порта 80 (в основной конфигурации сайта, например /etc/httpd/conf.d/yourdomain.conf), который перенаправляет на HTTPS:

<VirtualHost *:80>
    ServerName www.yourdomain.com
    ServerAlias yourdomain.com
    Redirect permanent / https://www.yourdomain.com/
</VirtualHost>

Шаг 5: Проверка конфигурации

Всегда проверяйте синтаксис перед перезагрузкой; опечатка в конфигурации может помешать запуску Apache:

sudo apachectl configtest

Вы должны увидеть Syntax OK. Если появилась ошибка, вернитесь к предыдущим шагам, прежде чем продолжить.

Шаг 6: Перезагрузка Apache

Примените изменения, перезагрузив службу httpd. Перезагрузка активирует новую конфигурацию, не разрывая существующие соединения:

sudo systemctl reload httpd
sudo systemctl start httpd
sudo systemctl enable httpd

И ещё одно: убедитесь, что брандмауэр разрешает HTTPS-трафик через порт 443:

sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

Поздравляем! Ваш SSL-сертификат теперь установлен на сервере Red Hat Linux с Apache.

Чтобы убедиться, что всё работает правильно, и получить мгновенный отчёт о состоянии, проверьте ваш домен с помощью нашего инструмента SSL Checker. Проверка выявляет любые ошибки цепочки или конфигурации, которые могут повлиять на доверие браузеров к вашему сертификату.

Сэкономьте 10% на SSL-сертификатах при заказе сегодня!

Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10

Детальное изображение дракона в полете
Написано

Опытный автор контента, специализирующийся на SSL-сертификатах. Превращает сложные темы кибербезопасности в понятный, увлекательный контент. Вносите свой вклад в повышение уровня цифровой безопасности с помощью впечатляющих рассказов.