HTTPS

Порт 443: порт HTTPS для безопасного веб-трафика.

Узнайте, почему HTTPS использует порт 443, когда его открывать, как запустить на нем службу и как проверить, что защищенный трафик может достичь вашего сервера.

Порт по умолчанию
443
Протокол
TCP
Основное назначение
Шифрованный веб- и API‑трафик

Что такое порт 443?

Порт 443 — это TCP-порт по умолчанию для HTTPS, зашифрованной версии HTTP. Когда браузер открывает адрес, начинающийся с https://, и пользовательский порт не отображается, он подключается к порту 443, согласовывает TLS, проверяет сертификат, а затем отправляет HTTP-запросы через зашифрованный сеанс.

  • Защищенный веб-порт по умолчанию

    Большинство веб-сайтов, API, обратных прокси-серверов, веб-перехватчиков, панелей управления и источников CDN используют 443, когда им нужен зашифрованный трафик, совместимый с браузером.

  • Открытие 443 – это только половина дела

    Правило брандмауэра может разрешить этот порт, но веб-сервер, такой как Nginx, Apache, Caddy, IIS или балансировщик нагрузки, также должен прослушивать порт 443.

Почему HTTPS использует порт 443

HTTPS стал стандартным способом защиты веб-сессий, поскольку простой HTTP предоставляет запросы, ответы, файлы cookie и данные форм всем, кто может наблюдать за сетевым путем. Порт 443 предоставляет клиентам и серверам предсказуемое место для начала зашифрованного разговора. Браузеру не требуется, чтобы пользователь вводил номер порта, а группы инфраструктуры могут создавать правила брандмауэра, прокси-сервера и мониторинга на основе общеизвестных значений по умолчанию.

Сам номер взят из известного реестра портов, поддерживаемого IANA. Ранний безопасный веб-трафик использовал SSL, а позже TLS заменил SSL в качестве современного протокола безопасности. Название HTTPS осталось, поскольку протоколом приложения по-прежнему является HTTP, но он передается внутри канала, защищенного TLS. Сегодня, когда люди говорят «сертификат SSL», они обычно имеют в виду сертификат TLS, используемый HTTPS на порту 443.

Порт 443 против порта 80

Порт 80 является портом по умолчанию для HTTP. Он по-прежнему может быть полезен для первоначальных перенаправлений, проблем автоматизации сертификатов, внутренних проверок работоспособности и совместимости с устаревшими клиентами. Порт 443 отличается тем, что браузер ожидает подтверждения TLS до начала обычного HTTP-трафика. Это рукопожатие позволяет серверу подтвердить свою личность с помощью сертификата и позволяет обеим сторонам согласовать ключи шифрования перед обменом личными данными.

Современные производственные сайты обычно оставляют порт 80 открытым только для перенаправления или автоматизации сертификации. Реальный трафик приложения должен попадать на адрес 443, часто с включенным HSTS, чтобы браузеры не забывали использовать HTTPS.

Когда следует открыть порт 443

Откройте порт 443, когда интернет-пользователю, клиентскому приложению, поставщику веб-перехватчиков, CDN, мобильному приложению или партнерской системе необходимо получить доступ к вашей службе через HTTPS. Типичные примеры включают общедоступные веб-сайты, API-интерфейсы REST, конечные точки GraphQL, обратные вызовы OAuth, веб-перехватчики платежей, входные двери обратного прокси-сервера, контроллеры входа в контейнер и автономные информационные панели, защищенные аутентификацией.

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

Перед открытием 443

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

Отдельно два вопроса: доступен ли порт и правильно ли настроен HTTPS? Средство проверки портов подтверждает TCP-путь. Такие инструменты, как Curl, инструменты разработки браузера и openssl s_client, помогают проверять перенаправления, сертификаты, версии TLS и ответы HTTP.

Как открыть порт 443 в Windows, Linux и macOS

На Windows Server установите IIS, Nginx, Caddy или другой веб-сервер, привяжите сертификат к сайту и разрешите входящий TCP 443 в брандмауэре Защитника Windows. Облачным серверам также требуется разрешение 443 в группе безопасности облака или политике брандмауэра.

В Linux установите Nginx, Apache или Caddy, настройте виртуальный хост для 443 и используйте сертификат от такого поставщика, как Let's Encrypt. Затем разрешите порт в брандмауэре хоста, например, с помощью ufwallow 443/tcp в Ubuntu. Контейнерам также необходимо 443, опубликованное на хосте или балансировщике нагрузки.

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

  • Уровень обслуживания: Nginx, Apache, Caddy, IIS, балансировщик нагрузки или входящий контроллер должны прослушивать TCP 443.
  • Брандмауэр хоста: брандмауэр Защитника Windows, ufw, firewalld, nftables, iptables или pf должен разрешать входящий TCP 443.
  • Граница сети: группы безопасности облака, NAT маршрутизатора, правила CDN и балансировщики нагрузки должны направлять трафик на серверную часть.
  • Уровень TLS: цепочка сертификатов, имя хоста, процесс обновления и настройки протокола должны быть действительными для реальных браузеров.

Как проверить порт 443

Начните с проверки внешнего порта по общедоступному IP-адресу или имени хоста. Если результат открыт, удаленный клиент может установить TCP-соединение с адресом 443. Затем используйте браузер или Curl -I https://example.com, чтобы проверить статус HTTP, перенаправления и заголовки.

На самом сервере проверьте, прослушивает ли процесс, с помощью ss -tlnp, netstat или PowerShell. Для получения подробной информации о TLS, openssl s_client -connect example.com:443 -servername example.com отображает цепочку сертификатов и информацию о подтверждении связи.

Тестирование порта 443 с помощью средства проверки портов

Распространенные случаи устранения неполадок 443

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

К частым ошибкам относятся открытие брандмауэра хоста и забвение облачного брандмауэра, сопоставление порта Docker 443 внутри контейнера без публикации его на хосте или тестирование из домашней сети за CGNAT. В таких случаях вам может понадобиться туннель, бизнес-соединение или конечная точка общедоступного облака.

Контрольный список безопасности для порта 443

Сохраняйте TLS простым и современным. Предпочитайте TLS 1.3 и TLS 1.2, отключайте устаревшие протоколы, автоматически обновляйте сертификаты, перенаправляйте HTTP на HTTPS и отслеживайте срок действия сертификата. Не полагайтесь только на шифрование. Поставьте аутентификацию выше частных инструментов, ограничьте административные пути, исправьте стек приложений и регистрируйте неудачные попытки аутентификации.

Для дорогостоящих сервисов разместите 443 за обратным прокси-сервером, WAF, CDN или балансировщиком нагрузки, который может ограничить скорость подозрительного трафика и улучшить наблюдаемость. Если служба предназначена только для персонала, используйте VPN, прокси-сервер с идентификацией, белый список или mTLS, а не оставляйте ее широко доступной.

Частые вопросы

Всегда ли HTTPS должен использовать порт 443?

Нет. HTTPS может работать на другом TCP-порту, например 8443, если клиент включает порт в URL-адрес. Порт 443 – это порт по умолчанию, который браузеры принимают, если не указан собственный порт.

Опасен ли открытый порт 443?

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

Почему порт 443 выглядит открытым, но веб-сайт по-прежнему не работает?

Прослушиватель TCP может быть доступен, если конфигурация HTTPS нарушена. Проверьте сертификат, имя хоста, маршрутизацию SNI, конфигурацию обратного прокси-сервера, работоспособность серверной части, перенаправления и журналы приложений.

Могу ли я закрыть порт 80 и использовать только 443?

Да, если пользователям и средствам автоматизации не нужны перенаправления HTTP или запросы сертификатов на основе HTTP. Многие сайты оставляют порт 80 открытым только для перенаправления на HTTPS и используют порт 443 для всего реального трафика.