О web-разработке
и даже немного больше...

Как создать SSL сертификат на Apache для CentOS 6?

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

Шаг первый – Установка mod_ssl
Убедитесь, что у вас установлен Apache + mod_ssl. Для установки mod_ssl введите в консоли сервера команду:

yum install mod_ssl

 
Шаг второй – создайте директорию
Для хранения сертификатов так же неплохо было бы создать отдельную директорию.

mkdir /etc/httpd/ssl

 
Шаг третий, создаем самоподписанный сертификат
Для генерации сертификата воспользуемся одной из команд OpenSSL. Создавая сертификат, укажите срок действия сертификата, в нашем примере указано 365 дней.

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

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

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]:KZ
State or Province Name (full name) [Some-State]:South Kazakhstan
Locality Name (eg, city) []:Shymkent
Organization Name (eg, company) [Internet Widgits Pty Ltd]:href blog
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:example.com
Email Address []:example@example.com

 
Шаг четвертый – устанавливаем сертификат
Теперь в дополнительном конфигурационном файле Apache пропишем настройки для виртуальных хостов.
 
Открываем конфигурационный файл SSL:

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

 
Найдите строку начинающиеся с записи <VirtualHost _default_:443>, здесь нужно кое-что подправить.
Сделайте записи:

ServerName example.com:443
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/apache.crt
SSLCertificateKeyFile /etc/httpd/ssl/apache.key

 
По большому счету все готово. Сохраните сделанные изменения.
Перезапустите сервер Apache:

/etc/init.d/httpd restart

 
Откройте в браузере ваш сайт, убедитесь, что всё работает.

Опубликован: 23.11.2014 г.

См. также:

Преимущества и недостатки веб-серверов Nginx и Apache
Как включить сжатие GZip в Nginx?
Подробнее о логах в Apache
Ротация логов в Linux
Denwer в локальной сети
HTTP авторизация
Просмотр списка загруженных модулей Apache
httpd грузит процессор, что делать?

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

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

Комментарии
  • Загрузка...
Друзья сайта