Создание SSL-сертификата в Apache для CentOS 6

О самоподписанных сертификатах

SSL-сертификат – это способ шифрования информации сайта с целью создать более защищенное соединение. Кроме того, такой сертификат может предоставить посетителям сайта идентификационную информацию виртуального сервера. SSL-сертификат можно получить в центре сертификации (ЦС); тем не менее, существуют и  самостоятельно подписанные сертификаты, которые не нуждаются в подтверждении сторонними лицами.

1: Установка mod_ssl

Прежде чем приступить к созданию самоподписанного сертификата, нужно убедиться, что на сервере установлены Apache и модуль mod_ssl. При необходимости их можно установить с помощью одной команды:

yum install mod_ssl

2: Создание нового каталога

Далее нужно создать новый каталог для хранения ключа и сертификата:

mkdir /etc/httpd/ssl

3: Создание самоподписанного сертификата

Создавая сертификат, необходимо указать срок его действия; для этого измените значение 365 нужным количеством дней. Без изменений следующая строка создаст сертификат со сроком действия в 365 дней.

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/httpd/ssl/apache.key -out /etc/httpd/ssl/apache.crt

Итак, данная команда создает SSL­-сертификат и закрытый ключ, который защищает его, а затем размещает эти файлы в новом каталоге.

Кроме того, эта команда выведет в терминал спискок полей, которые должны быть заполнены.

Наиболее важным из них является поле «Common Name». В нем нужно указать официальное доменное имя (или IP-адрес сайта, если такого имени еще нет).

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:New York
Locality Name (eg, city) []:NYC
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Awesome Inc
Organizational Unit Name (eg, section) []:Dept of Merriment
Common Name (e.g. server FQDN or YOUR name) []:example.com
Email Address []:webmaster@awesomeinc.com

4: Настройка сертификата

Теперь все необходимые компоненты сертификата готовы. Следующее, что нужно сделать, – это настроить виртуальные хосты для отображения нового сертификата.

Откройте файл ssl.conf:

vi /etc/httpd/conf.d/ssl.conf

Найдите раздел, который начинается с <VirtualHost _default_:443> и отредактируйте его, как описано ниже.

Раскомментируйте строки DocumentRoot и ServerName, замените example.com официальным доменным именем или IP-адресом сервера (то, что было указано в поле Common Name в разделе 3):

ServerName example.com:443

Найдите следующие три строки и убедитесь, что они имеют правильные расширения:

SSLEngine on
SSLCertificateFile /etc/httpd/ssl/apache.crt
SSLCertificateKeyFile /etc/httpd/ssl/apache.key

Готово! Теперь виртуальный хост Apache настроен должным образом. Сохраните все внесенные изменения и закройте файл.

5: Перезапуск Apache

На данном этапе сертификат полностью готов к работе. Осталось только перезапустить Apache, чтобы активировать внесенные изменения.

/etc/init.d/httpd restart

Чтобы увидеть новый сертификат, введите в браузере https://адрес_сервера; это выведет на экран новый сертификат

Готово!

Tags: , , , , , ,

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