Установка и настройка бесплатного SSL сертификата для apache на CentOS 7 CentOS 9 Almalinux9 Fedora 40
Есть несколько способов решения данной задачи, но мне кажется самый удобный - получить бесплатный ssl сертификат от Let's Encrypt, через утилиту certbot.
Стандартное (будут обновлены только истекающие сертификаты):
Centos 9, AlmaLinux, Fedora 40
Для редактирования файла конфигурации Apache используйте следующую команду:
CentOS 7 CentOS 9 Almalinux9 Fedora 40
Certbot позволяет не только получить сертификат, но и сразу установить его на apache или nginx. При этом не только на один домен, а на несколько.
Установка
Centos 7yum -y install yum-utils
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
yum -y install python2-certbot-apache
Centos 9, AlmaLinux, Fedora 40
dnf install certbot -y
Получение сертификата
Centos 7certbot --apache
- дальше нужно будет указать номер или номера нужных доменов (можно через пробелы или запятые) certbot --apache -d ваш домен
Centos 9, AlmaLinux, Fedora 40
certbot certonly --standalone -d ваш домен.ру
Обновление сертификатов
Centos 7Стандартное (будут обновлены только истекающие сертификаты):
certbot renew
Принудительное (будут обновлены все сертификаты): certbot renew --force-renewal
Centos 9, AlmaLinux, Fedora 40
certbot renew
Настройте SSL-сертификат
Теперь, когда мы получили сертификат SSL, нам нужно настроить наш веб-сервер для использования сертификата SSL. Здесь мы будем использовать Apache в качестве примера.Для редактирования файла конфигурации Apache используйте следующую команду:
sudo nano /etc/httpd/conf.d/ssl.conf
SSLEngine onSSLCertificateFile /etc/letsencrypt/live/ваш домен.ру/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ваш домен.ру/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/ваш домен.ру/chain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ваш домен.ру/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/ваш домен.ру/chain.pem
Пример:
<VirtualHost ваш ip адрес:443>
ServerName 192.168.88.3
ServerAlias ваш домен.ру
DocumentRoot /www/ваш домен.ру/www
<Directory /www/ваш домен.ру/www>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /www/ваш домен.ру/logs/error.log
CustomLog /www/ваш домен.ру/logs/access.log common
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/ваш домен.ру/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ваш домен.ру/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/ваш домен.ру/chain.pem
SSLCertificateFile /etc/letsencrypt/live/ваш домен.ру/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ваш домен.ру/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/ваш домен.ру/chain.pem
</VirtualHost>
<VirtualHost ваш ip адрес:443>
ServerName 192.168.88.3
ServerAlias ваш домен.ру
DocumentRoot /www/ваш домен.ру/www
<Directory /www/ваш домен.ру/www>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /www/ваш домен.ру/logs/error.log
CustomLog /www/ваш домен.ру/logs/access.log common
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/ваш домен.ру/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ваш домен.ру/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/ваш домен.ру/chain.pem
SSLCertificateFile /etc/letsencrypt/live/ваш домен.ру/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ваш домен.ру/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/ваш домен.ру/chain.pem
</VirtualHost>
- root от