Безопасность Apache: настройка HTTPS

Включаем поддержку SSL в Apache

1. В файле httpd.conf (лежит в C:\Program Files\Apache Software Foundation\Apache2.2\conf) комментируем строку Listen 80 и дописываем Listen 443  (https порт):

#Listen 80
Listen 443


2. Копируем файлы ssleay32.dll и libeay32.dll из C:\Program Files\Apache Software Foundation\Apache2.2\bin в %SystemRoot%\system32
3. Копируем файл openssl.cnf из C:\Program Files\Apache Software Foundation\Apache2.2\conf в C:\Program Files\Apache Software Foundation\Apache2.2\bin

Теперь создадим свой сертификат:
 
 cd “C:\Program Files\Apache Software Foundation\Apache2.2\bin”
 openssl req -config openssl.cnf -new -out my_server.csr

Отвечаем на вопросы, не важно чем заполнять, главное не забыть пароль (pass phrase).
Параметры "A challenge password" и "An optional company name" можно не заполнять

Далее: 

openssl rsa -in privkey.pem -out my_server.key
(тут понадобится пароль, указанный в предыдущем пункте)

openssl x509 -in my_server.csr -out my_server.cert -req -signkey my_server.key -days 356
openssl x509 -in my_server.cert -out my_server.der.crt -outform DER

Создаем папку ssl в C:\Program Files\Apache Software Foundation\Apache2.2\conf и перемещаем в нее файлы my_server.key и my_server.cert из C:\Program Files\Apache Software Foundation\Apache2.2\bin

В файле httpd.conf раскомментируем строку:
#LoadModule ssl_module modules/mod_ssl.so

В конце файла правим строки, чтобы получилось так:


SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
SSLMutex default
SSLSessionCache none



SSLEngine On
SSLCertificateFile conf/ssl/my_server.cert
SSLCertificateKeyFile conf/ssl/my_server.key


Вместо localhost пишем название сайта, иначе браузеры будт ругаться на ошибку установления защищенного соединения.

 Сохраняемся я и закрываем httpd.conf

В реестре:
 в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Apache2.2.
 находим параметр ImagePath, и добавляем к его значению ключ -D ssl:
"C:\Program Files\Apache Software Foundation\Apache2.2\bin\httpd.exe" -D ssl -k runservice


перезапускаем службу апача

Комментариев нет: