Назад | Перейти на главную страницу

Ошибка при настройке SSL на альтернативном порту

У меня есть веб-сервер, работающий на Raspberry Pi. Я запускаю stunnel на порту 443, поэтому я работал над перемещением своего веб-сервера на порт 8443. я использую Let's Encrypt (Certbot) для моих SSL-сертификатов, и раньше они работали отлично.

Я научился получать сертификаты с помощью запроса DNS, поэтому порт 443 для аутентификации больше не нужен. Я считаю, что все мои файлы конфигурации настроены правильно, но я вставлю их ниже.

Apache запущен, и ничто не должно с ним конфликтовать, но всякий раз, когда я пытаюсь получить доступ к своему сайту по HTTPS, Chrome сообщает, что сайт неожиданно закрыл соединение, а Edge сообщает, что использует устаревшие или небезопасные настройки TLS.

Я пытался выяснить это для себя, но на данный момент я не знаю, что делать.

# If you just change the port or add more ports here, you will likely also'
# have to change the VirtualHost statement in'
# /etc/apache2/sites-enabled/000-default.conf'
Listen 80
#<IfModule ssl_module>'
#       Listen 8443'
#</IfModule>'
#<IfModule mod_gnutls.c>'
#       Listen 8443'
#</IfModule>'
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet'
<IfModule mod_ssl.c>
Listen 8443
</Ifmodule>

Пример конфигурации VHost

<IfModule mod_ssl.c>
<VirtualHost *:8443>
        ServerName mysite.tld
        ServerAdmin myemail@provider.com
        DocumentRoot /var/www/html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLCertificateFile /etc/letsencrypt/live/mysite.tld/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/mysite.tld/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>

Конфигурация HTTP по умолчанию, для справки

<VirtualHost *:80>
        ServerName mysite.tld
        ServerAdmin myemail@provider.com
        DocumentRoot /var/www/html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
Redirect permanent / https://mysite.tld/
RewriteEngine on
RewriteCond %{SERVER_NAME} =mysite.tld
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]
</VirtualHost>

Подтвердите, что вы подключаетесь в браузере к порту 8443.

Убедитесь, что он действительно обрабатывается apache, а не каким-либо другим процессом, прослушивающим этот порт, не предоставляющим SSL.

Убедитесь, что SSL работает и прослушивает порт 8443.

Я не вижу SSLEngine On в вашем фрагменте. Это также может вызывать у вас проблемы.