Как настроить приём подключений через порт HTTPS?
Артем, Тольятти 9
После переноса сайта на новый VPS браузер пишет "Подключение не защищено" и не открывает сайт по https, только по http. Подозреваю, что дело в порте 443, но не знаю, как проверить и открыть его на сервере.
Дмитрий Акиндинов технический администратор сайтов
ответил
Ошибка «Подключение не защищено» на новом сервере чаще всего означает одно из трёх: порт 443 закрыт файрволом, веб-сервер не настроен слушать этот порт, или SSL-сертификат не установлен вообще. Проверить порт можно командой curl -v https://ваш-домен с другого компьютера — если соединение обрывается сразу, дело в файрволе или конфиге сервера, а не в сертификате.
Откройте порт в файрволе сервера: для ufw на Ubuntu это ufw allow 443/tcp, для iptables — iptables -A INPUT -p tcp —dport 443 -j ACCEPT. У многих хостингов есть ещё отдельный файрвол на уровне облачной панели, где порт 443 нужно открыть отдельно от настроек внутри самой операционной системы — это частая причина, когда внутри всё разрешено, а снаружи порт всё равно закрыт.
Дальше проверьте конфиг веб-сервера: в Nginx нужна секция server с listen 443 ssl и путями к файлам сертификата и ключа, в Apache — аналогично в VirtualHost на 443 порту с включённым модулем mod_ssl. Если конфиг прописан только на 80 порт, https просто некому обрабатывать, даже при открытом порте в файрволе.
Если порт открыт и веб-сервер настроен, а ошибка осталась, скорее всего, не установлен сам SSL-сертификат. Бесплатный вариант через Let’s Encrypt ставится утилитой certbot одной командой и сам прописывает нужные пути в конфиг Nginx или Apache. После установки перезапустите веб-сервер и проверьте результат в браузере.
Задать свой вопрос
Вопросы проходят модерацию. Ответ появляется на сайте в течение пары дней.
Вопрос отправлен. После проверки он появится на сайте вместе с ответом.
Вопрос не отправлен: нужно подтвердить согласие на обработку персональных данных.