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

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

I've been building and managing websites for over 20 years, with a heavy focus on the technical side of the cybersecurity, VPN, and SaaS industries. I know how sites are built from the ground up, which means I know how to secure them. Here at SSL Dragon, I write about web architecture, encryption, and keeping your infrastructure safe.

Avatar of Sergiu Rosca
Technical Review by Sergiu Rosca

Sergiu Rosca is the core web developer behind SSL Dragon. He manages the technical infrastructure, platform performance, and backend integrations that keep the site running smoothly and securely. At SSL Dragon, Sergiu shares practical insights on web development, site optimization, and technical troubleshooting.

All SSL Dragon installation guides are tested on live server environments and undergo a strict peer-review process to ensure your infrastructure remains secure. Read our full Editorial Policy.