Я пытаюсь настроить самозаверяющий сертификат SSL, чтобы я мог разработать свое приложение с помощью SSL (чтобы я наконец смог запустить свои сайты с SSL ...). Я создал сайт Angular с безголовым API (Lumen) и попытался настроить многодоменный сертификат SSL, используя вопрос от ServerFault:
Как создать многодоменный самоподписанный сертификат для Apache2?
Команда test проверила, поэтому я попытался установить сертификат со следующей конфигурацией Apache:
<VirtualHost *:80>
ServerAdmin contact@gamersplane.com
ServerName api.gamersplane.local
DocumentRoot /var/www/GamersPlane.api/public
<Directory /var/www/GamersPlane.api/public/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog "|/usr/bin/cronolog /var/log/gamersplane/%Y/%m/%d/error.log"
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel notice
CustomLog ${APACHE_LOG_DIR}/gamersplane/access.log combined
SSLEngine on
SSLCertificateFile /var/www/GamersPlane.api/ssl/gamersplane.local.pem
SSLCertificateKeyFile /var/www/GamersPlane.api/ssl/gamersplane.local.key
</VirtualHost>
К сожалению, когда я захожу на свой сайт, я получаю This site can’t provide a secure connection
. Я пробовал поискать в Google для этого, но все кажется специфичным для определенных сайтов / конфигураций, и я не могу понять, как отладить, что не так.
Я настраивал конфигурацию Apache через руководство по Digital Ocean, которое также рекомендовало эти конфигурации, в чем я не был уверен. Я пробовал с ними и без них, не повезло:
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
Мне нужна помощь в понимании того, как отлаживать / разрешать подобные проблемы.
Вам необходимо настроить еще один виртуальный хост apache и прослушивание порта 443.
Видеть: https://httpd.apache.org/docs/2.4/ssl/ssl_howto.html
И я бы не стал использовать самозаверяющие сертификаты даже для разработки, если вы можете получить сертификаты, подписанные общедоступным центром сертификации бесплатно. https://letsencrypt.org/
Я изменил вашу конфигурацию на что-то полезно. Должно работать как есть, но не проверено.
# only if not already listen to port 443 ! apache ssl module have to be enabled, too !
Listen 443
<VirtualHost *:443>
ServerAdmin contact@gamersplane.com
ServerName api.gamersplane.local
# ServerAlias api2.gamersplane.local
DocumentRoot /var/www/GamersPlane.api/public
<Directory /var/www/GamersPlane.api/public/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog "|/usr/bin/cronolog /var/log/gamersplane/%Y/%m/%d/error.log"
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel notice
CustomLog ${APACHE_LOG_DIR}/gamersplane/access.log combined
SSLEngine on
SSLCertificateFile /var/www/GamersPlane.api/ssl/gamersplane.local.pem
SSLCertificateKeyFile /var/www/GamersPlane.api/ssl/gamersplane.local.key
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite 'HIGH:!aNULL:!eNULL:!EXP:!DES:!MD5:!PSK:!RC4:!SRP:!DSS:!CAMELLIA:!SHA'
# depending on apache version also useful options:
SSLCompression off
SSLInsecureRenegotiation off
</VirtualHost>