Я пытался найти его в Интернете, но я запутался. Я не получил никакой ясности.
Как включить SSL в Wamp Server?
Ответ 1
Скопировано по ссылке:
Включение SSL на WAMP
В этом пошаговом руководстве объясняется, как вы можете использовать SSL на WAMP.
-
Загрузите WampServer 2.0 из здесь и установите его в папку по умолчанию (c:\wamp).
-
Теперь нам нужно иметь пару private/public key, а также CA, чтобы подписывать наш открытый ключ.
Сначала давайте посмотрим, как мы можем создать пару private/public key.
keytool -genkey -alias rpcert -keyalg RSA -keysize 1024 -dname "CN=identity-rp,L=SL,S=WS,C=LK" -keypass wso2key -keystore rpkeystore.jks -storepass wso2key
Это создаст хранилище ключей [rpkeystore.jks] с парой открытого/закрытого ключей.
Мой предыдущий пост объясняет, как вы можете экспортировать свой закрытый ключ из хранилища ключей. Просто следуйте инструкциям, приведенным здесь, и вы получите файл server.key, который является вашим личным ключом.
Теперь нам нужно подписать наш открытый сертификат с помощью CA.
Это - требует от нас создания образца ЦС и последующего объяснения, как это сделать.
Здесь мы используем OpenSSL для создания необходимой инфраструктуры ЦС. Для Windows вы можете скачать Win32 OpenSSL v0.9.8g здесь.
После установки убедитесь, что вы добавили C:\OpenSSL\bin [i.e [INSTALLED_LOCATION]\bin]
в переменную env PATH.
openssl req -x509 -newkey rsa:1024 -keyout cakey.pem -out cacert.crt
Вышеупомянутая команда будет создавать пару открытых/закрытых ключей для нашего образца CA.
Теперь нам нужно создать запрос подписи сертификата на наш сервер.
Перейдите в папку, в которой вы создали хранилище ключей [rpkeystore.jks], и выполните следующую команду.
keytool -certreq -v -alias rpcert -file csr.pem -keypass wso2key -storepass wso2key -keystore rpkeystore.jks
Теперь скопируйте файл csr.pem в папку, где были сгенерированы ключи для ЦС, и выпустите следующую команду.
openssl x509 -req -days 365 -in csr.pem -CA cacert.crt -CAkey cakey.pem -CAcreateserial -out server.crt
Теперь у нас есть все необходимые файлы.
cacert.crt → Открытый сертификат CA server.crt → Открытый сертификат сервера, подписанный CA server.key → Закрытый ключ сервера.
Скопируйте все вышеуказанные три файла в c:\wamp\bin\apache\apache2.2.8\conf
, если вы установили WAMP в местоположение по умолчанию.
Также отредактируйте файл c:\WINDOWS\system32\drivers\etc\hosts и добавьте следующую запись.
127.0.0.1 identity-rp
Если вы могли бы вспомнить, когда мы создаем открытый сертификат для нашего сервера, мы создали его для identity-rp.
- Изменить httpd.conf [C:\wamp\bin\apache\apache2.2.8\conf]
Раскомментируйте следующие две строки.
LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf
Найдите Listen 80 и измените его на Listen 12081 - это наш сервер работает на номере порта 12081.
Найти имя_сервера и установить его в ServerName identity-rp: 12081.
-
Изменить httpd-ssl.conf [C:\wamp\bin\apache\apache2.2.8\conf\extra]
Установить Listen identity-rp: 12444 - мы прослушиваем порт 12444 для безопасной связи.
Установите
Установить DocumentRoot "C:/wamp/www/"
Установить имя_сервера_имя-rp: 12444
Для всего файла найдите "C:/Program Files/Apache Software Foundation/Apache2.2" и замените на "C:/wamp/bin/apache/apache2.2.8".
Найти SSLCertificateFile и установить SSLCertificateFile "C:/wamp/bin/apache/apache2.2.8/conf/server.crt"
Найти SSLCertificateKeyFile и установить SSLCertificateKeyFile "C:/wamp/bin/apache/apache2.2.8/conf/server.key"
Найти SSLCACertificateFile и установить SSLCACertificateFile "C:/wamp/bin/apache/apache2.2.8/conf/cacert.crt"
- Изменить php.ini(C:\wamp\bin\apache\apache2.2.8\bin)
Раскомментируйте строку extension=php_openssl.dll
-
Теперь мы закончили - выполните проверку синтаксиса и запустите сервер Apache.
: > cd C:\wamp\bin\apache\apache2.2.8\bin : > httpd -t : > httpd --start
-
Введите
https://identity-rp:12444
в своем браузере - вы увидите ошибку сертификата в браузере - чтобы избежать установки сертификата CA в вашем браузере.
Ответ 2
Это лучшая статья, которую я нашел для этой цели.
Но он пропустил только одну точку. Это путь к HTTPD-SSL.CONF, который находится в папке apache/confg.
Внимательно следуйте всем шагам.
Ответ 3
Простой способ для связи локального хоста по SSL/HTTPS:
Перейти скачать: файл cacert.pem
В php.ini
* откомментируйте и измените: curl.cainfo = "c: /wamp/bin/php/php5.5.12/cacert.pem"
- Вы можете узнать, где находится ваш файл
php.ini
на вашем компьютере, запустивphp --ini
в вашем CLI - Я поместил мой cacert.pem в ту же директорию, что и php.ini.
Ответ 4
Рабочий раствор к 2019 году
(Вот источник со всеми необходимыми пошаговыми командами). Однако из-за большого текста я сократил рабочий процесс:
- в Wamp сразу нажмите APACHE и загрузите
ssl_module
иsocache_shmcb_module
. - Поместите сгенерированный
private.key
иcertificate.crt
вapacheXX\conf\
. - в
apacheXX\conf\httpd.conf
откомментируйте эту строку:Include conf/extra/httpd-ssl.conf
- Откройте
apacheXX\conf\extra\httpd-ssl.conf
и примените следующие изменения: Под строкой:<VirtualHost _default_:443>
найдите и установите их:
ServerName localhost:443 SSLCertificateFile "../path/to/../conf/certificate.crt" SSLCertificateKeyFile "../path/to/../conf/private.key"
Сохраните файл и закройте его. Затем вы можете загрузить https://localhost/