Управление портами в Linux (Ubuntu/Debian/CentOS)
Как много времени проходит с момента заказа сервера на хостинге до первого подключения к готовому серверу? Несколько минут. На сколько полученный сервер готов к тому, чтобы использовать его на полную? На 100%. Ну или почти на 100. Точнее, совсем не на 100. Новый сервер подобен новорождённому ребёнку. У него одежды, нет приобретённого иммунитета и нет почти никаких навыков. Он уязвим для любого внешнего воздействия. И защиту от окружающих угроз мы должны ему дать. Наш новый сервер на начальном этапе не готов противостоять всему, что приходит к нему извне. А значит, его необходимо оснастить защитой. Такая защита для сервера – брандмауэр, или файрвол (firewall), или межсетевой экран.
Обмен информацией между узлами сети происходит посредством портов открытых для использования на узлах. Для того, чтобы иметь гарантии прохождения исключительно легитимного трафика, следует уметь управлять портами нашего сервера при помощи брандмауэра.
Управление портами в Ubuntu и Debian
В операционных системах Ubuntu и Debian для управления брандмауэром довольно часто применяется утилита iptables. Её упрощённым интерфейсом является UFW (Uncomplicated Firewall). Открытие доступа к серверу для какого-либо приложения происходит путём регистрации этого приложения в UFW.
В Ubuntu интерфейс UFW как правило присутствует по умолчанию, в Debian же необходимо будет сначала его проинсталлировать. Перед установкой брандмауэра рекомендуется обновить репозитории:
$ sudo apt update $ sudo apt install ufw
Список приложений, зарегистрированных в брандмауэре, доступен по следующей команде:
$ sudo ufw app list
Если вы производите первоначальную настройку межсетевого экрана используя подключение к серверу по ssh
, логично было бы сразу же прописать в UFW соответствующее этому протоколу правило:
$ sudo ufw allow SSH
Эту команду также можно применить используя соответствующий номер порта вместо имени протокола.
ssh
это, как правило, порт 22:$ sudo ufw allow 22
В Ubuntu команда для разрешения подключения по ssh
выглядит как:
$ sudo ufw allow OpenSSH
Для того, чтобы межсетевой экран начал работать, его необходимо запустить:
$ sudo ufw enable
Теперь, можно добавить в UFW правило, которое позволит разрешить передачу данных, например, по порту 80, или другими словами, при помощи протокола http
. Это можно прописать командой:
$ sudo ufw allow 80
либо:
$ sudo ufw allow http
По аналогии можно также разрешить трафик с использованием порта 443, то есть по протоколу https
:
$ sudo ufw allow 443
или:
$ sudo ufw allow https
Подобными инструкциями можно давать разрешения для подключений, использующих несколько портов. Например, так выглядит команда на открытие целого диапазона портов (32810-32814):
$ sudo ufw allow 32810:32814/udp
Также, помимо номеров портов и названий протоколов, в разрешительных правилах есть возможность использовать IP-адреса. Вот как выглядит команда, разрешающая подключение только с IP-адреса 10.10.10.233:
$ sudo ufw allow from 10.10.10.233
Или из одной определённой подсети:
$ sudo ufw allow from 10.10.10.
0/24
Или с одного определённого IP-адреса и только по одному определённому порту:
$ sudo ufw allow from 10.10.10.233
to any port 22
Естественно существует возможность и закрыть доступ для уже открытого подключения через определённый порт. Для этого используется команда
. Следующей командой можно запретить подключения по протоколу http
:
$ sudo ufw deny http
Инструкция для закрытия всех подключений с определённого IP-адреса выглядит следующим образом:
$ sudo ufw deny from
10.10.10.233
где 10.10.10.233
– IP-адрес, для которого будут закрыты все соединения на наш сервер.
Уже созданные правила можно также удалить. Сделать это можно по номеру правила. Чтобы узнать номера правил, используйте следующую команду:
$ sudo ufw status numbered
Вывод данной команды выглядит следующим образом:
Номера правил указаны в скобках в начале строки. Например, правило для подключения по 443-му порту имеет номер 3. Исходя из этого, команда для удаления этого правила будет выглядеть как:
$ sudo ufw delete
3
То же самое можно сделать командой:
$ sudo ufw delete allow 443/tcp
Посмотреть текущее состояние межсетевого экрана позволяет команда:
$ sudo ufw status
Для отключения брандмауэра служит следующая инструкция:
$ sudo ufw disable
Управление портами в Centos
Клиентским интерфейсом для работы с межсетевым экраном в Centos является программа firewalld. Как правило, firewalld уже по умолчанию входит в состав служб Centos. Но если вдруг это не так, для его установки используйте следующие команды:
$ sudo dnf update -y
$ sudo dnf install firewalld -y
Если окажется, что firewalld уже был установлен в системе, команда вернёт следующее сообщение:
Текущее состояние службы можно увидеть набрав команду:
$ systemctl status firewalld
Если служба работает штатно, то вывод команды будет выглядеть так:
Список приложений, которым доступ в firewalld уже предоставлен, можно увидеть с помощью команды:
$ sudo firewall-cmd --permanent --list-all
Такие приложения перечислены в строке services
:
Чтобы предоставить приложению или протоколу, например, http
, возможность производить подключения к нашему серверу, необходимо использовать команду следующего вида:
$ sudo firewall-cmd --permanent --add-service=http
Этот протокол должен добавиться в строку services
:
Аналогичным образом можно открыть доступ для подключений к серверу по протоколу https
:
$ sudo firewall-cmd --permanent --add-service=https
В firewalld также есть возможность предоставить доступ для подключений по определённому порту. Так, например, будет выглядеть команда для открытия доступа по udp-порту 32810:
$ sudo firewall-cmd --zone=public --add-port=32810/udp
А так пишется команда для открытия доступа по пулу портов, например, для udp-портов с 32811 по 32814:
$ sudo firewall-cmd --zone=public --add-port=32811-32814/udp
И чтобы убедиться, что данные порты добавлены в список открытых, необходимо использовать следующую инструкцию:
$ sudo firewall-cmd --zone=public --list-ports
Доступ для подключений по определённому порту можно также и заблокировать. Например, закрытие доступа по udp-порту 32814 осуществляется командой:
$ sudo firewall-cmd --zone=public --remove-port=32814/
udp
И наконец, для применения всех внесённых изменений, брандмауэр необходимо перезапустить:
$ sudo firewall-cmd --reload
Заключение
Итак, мы рассмотрели установку и запуск межсетевых экранов в операционных системах Linux, таких как Ubuntu, Debian и Centos. А также, мы научились открывать доступ для подключений к нашему серверу через определённые порты и протоколы.
Настройка маршрутизаторов и сетевых экранов для 3CX
Настройка маршрутизаторов и сетевых экранов для 3CX Skip to content- Введение
- Настройка портов для SIP-транка / VoIP-провайдера
- Настройка портов для удаленных приложений 3CX
- Настройка портов для удаленных IP-телефонов / мостов 3CX при подключений Direct SIP
- Настройка портов для видеоконференций 3CX
- Другие сервисы (SMTP и сервер активации)
- Отключение SIP ALG
- Запуск утилиты Firewall Checker
- Подробные инструкции по настройке для распространенных сетевых экранов
- Дополнительная информация
Введение
Если вы планируете подключение к VoIP-провайдеру или используете удаленные добавочные номера (которые подключаются к АТС через Интернет), потребуется настройка сетевого экрана. Она необходима для корректного прохождения VoIP-трафика между Интернетом и локальной сетью организации. В этой главе рассматриваются общие вопросы настройки маршрутизаторов и сетевых экранов для работы с 3CX. Для вашего удобства мы подготовили подробные инструкции по настройке для популярных маршрутизаторов. Рекомендуется ознакомиться с подробным описанием работы маршрутизаторов и сетевых экранов с VoIP-трафиком.
Настройка портов для SIP-транка / VoIP-провайдера
Для работы 3CX с SIP-транками / VoIP-провайдерами и использования технологии WebRTC, создайте в сетевом экране статические правила публикации следующих портов:
- Порт 5060 (на вход, UDP) и 5060-5061 (на вход, TCP) для SIP-трафика
- Порт 9000-10999 (на вход, UDP) для RTP (Audio) трафика, который передает голос. Каждый вызов использует два RTP порта: один для управления, другой для передачи данных. Это значит, что на каждый одновременных вызов, который примет 3CX, вы должны открыть два порта (т.е. портов должно быть вдвое больше, чем вызовов).
Настройка портов для удаленных приложений 3CX
Для подключения удаленных приложений 3CX для Android, iOS, Mac и Windows, опубликуйте следующие порты:
- Порт 5090 (на вход, UDP и TCP) для технологии 3CX tunnel
- Порт 443 или 5001 (на вход, TCP) HTTPS для передачи статусов и автонастройки SIP-клиентов.
Если при установке сервера 3CX выбраны другие порты, укажите их.
- Порт 443 (на выход, TCP) для Google Android Push
- Порты 443, 2197 и 5223 (на выход, TCP) для Apple iOS Push. Дополнительная информация.
PUSH уведомления отправляются сервером 3CX на приложения 3CX, установленные на смартфонах. При получении сообщения приложение активируется и принимает вызов. Это принципиально повышает удобство работы с системой для мобильных пользователей.
Настройка портов для удаленных IP-телефонов / мостов 3CX при подключений Direct SIP
Для удаленных IP-телефонов и межстанционных транках 3CX существует два вида подключений: 3CX SBC (Tunnel) или Direct SIP (прямое SIP-подключение). Сервис 3CX SBC (Session Border Controller) объединяет VoIP трафик от всех удаленных устройств в один зашифрованный канал передачи данных. Это значительно упрощает настройку сетевых экранов и повышает надежность связи. 3CX SBC не требует дополнительной настройки сетевого экрана, поскольку использует те же порты, которые используют приложения 3CX. Подробнее о 3CX SBC можно узнать здесь.
При подключении удаленных устройств (добавочных номеров) непосредственно по SIP через Интернет (Direct SIP), необходимо открыть ряд портов на сетевом экране (большинство этих портов совпадают с портами, которые вы уже открыли при подключении SIP транков от операторов связи):
- Порт 5060 (на вход, UDP и TCP), порт 5061 (на вход, TCP, при использовании Secure SIP) – эти порты должны быть уже открыты, если вы используете SIP транки
- Порты 9000-10999 (на вход, UDP) для RTP (голоса) – уже открыты, если вы используете SIP транки
- Порт 443 или 5001 (на вход, TCP) – протокол HTTPS для автонастройки клиентов (если не выбраны собственные порты)
Настройка портов для видеоконференций 3CX
Чтобы пользователи могли создавать или участвовать в видеоконференциях, облачный сервис видеоконференций 3CX и локальная АТС 3CX должны обмениваться данными. Для этого необходимо открыть следующие порты:
- Порт 443 (на вход, TCP) должен быть открыт, чтобы участники могли подключиться к вашей системе 3CX.
- Система 3CX. Порт 443 (на выход, TCP) должен быть открыт, чтобы подключаться к облачной инфраструктуре видеоконференций 3CX.
- Участники конференции. Порты 443 (на выход, TCP) и 48000-65535 (на выход, UDP) должны быть открыты для обмена аудио- и видеоданными между участниками.
Другие сервисы (SMTP и сервер активации)
Также сервер АТС подключается к некоторым вспомогательным облачным сервисам 3CX:
- SMTP Service: Облачный сервис SMTP для отправки уведомлений пользователям
smtp-proxy.3cx.net, 2528 (на выход, TCP) - Activation Service: Сервис активации продуктов 3CX
activate.3cx.com, 443 (на выход, TCP, без инспектирования пакетов) - RPS Service: Автонастройка удаленных IP-телефонов
rps.3cx.com, 443 (на выход, TCP) - Update Server: Сервер обновлений 3CX и прошивок поддерживаемых IP-телефонов
Downloads-global.3cx.com, 443 (outbound, TCP)
Отключение SIP ALG
Для использования с 3CX выбирайте сетевой экран без сервиса SIP ALG (Application Layer Gateway) / SIP Helper или с возможностью его отключения. Ниже приведены руководства по отключению SIP ALG в распространенных маршрутизаторах:
- Отключение SIP ALG на роутерах Fortinet / FortiGate
- Отключение SIP ALG на роутерах Netgear
- Отключение SIP ALG на роутерах Thomson
Запуск утилиты Firewall Checker
После публикации портов проверьте корректность настройки сетевого экрана с помощью утилиты 3CX Firewall Checker!
Подробные инструкции по настройке для распространенных сетевых экранов
Руководства по публикации портов 3CX в популярных маршрутизаторах / сетевых экранах:
- Настройка сетевого экрана Lancom для работы с 3CX
- Настройка сетевого экрана Sonicwall для работы с 3CX
- Настройка маршрутизатора Draytek 2820 для работы с 3CX, включая настройку QoS
- Настройка маршрутизатора Zyxel P-662H-D1 для работы с 3CX
- Настройка AVM FritzBox в качестве сетевого экрана для работы с 3CX
- Настройка маршрутизатора CISCO для подключения VoIP-провайдера
- Настройка маршрутизатора FortiGate 80C для работы с 3CX
- Настройка сетевого экрана WatchGuard XTM для работы с 3CX
- Настройка сетевого экрана pfSense для работы с 3CX
- Настройка сетевого экрана Kerio Control Appliance для работы с 3CX
- Настройка сетевого экрана Mikrotik для работы с 3CX
Дополнительная информация
- Дополнительная информация о работе маршрутизаторов, NAT и VoIP.
- Дополнительная информация о настройке сетевого экрана для работы с 3CX.
- Использование утилиты 3CX Firewall Checker.
- Видеокурс по настройке сетевых экранов
- Устранение неполадок PUSH в приложении для Android
Соединяйте сотрудников и клиентов Телефонная система Чат для сайта Видеоконференции
На хостинге или своих ресурсах. До 10 пользователей – бесплатно навсегда. Без банковских карт и рисков.
Page load linkВаше руководство по HTTPS-порту 443 (и почему он важен для безопасности)
Владельцы веб-сайтов по всему миру переходят с HTTP на более безопасный протокол HTTPS. 95% интернет-трафика через Google теперь зашифровано и проходит через порт 443. Но что такое HTTPS-порт 443? И почему для владельцев веб-сайтов и, прежде всего, для предприятий электронной коммерции так важно использовать стандартный порт HTTPS?
В феврале 2022 года Управление ИТ выявило 83 крупных утечки данных по всему миру, что составляет 5,1 миллиона взломанных записей. По прогнозам IBM на 2022 год, это только начало.
Подслушиватели, атаки «человек посередине», спуфинговые атаки — вы называете это, опасность таится за каждым углом. При таком количестве угроз защита пользователей в Интернете стала приоритетом для предприятий и других организаций, которые пытаются использовать все, что у них есть, для предотвращения киберпреступлений.
Использование возможностей HTTPS-порта 443 может быть простым, но эффективным способом повысить безопасность вашего веб-сайта. Использование этого порта для передачи данных защищает конфиденциальную информацию вашего клиента с помощью современной технологии шифрования. В этой статье будут рассмотрены все тонкости стандартного порта HTTPS 443. Вы узнаете, что такое порт HTTPS 443, как он работает и как он может помочь вашему бизнесу снизить риск утечки данных путем создания безопасного канала связи между клиент и сервер.
Что такое сетевые порты и для чего они используются?
Прежде чем углубляться в суть HTTPS-порта 443, важно понять определение сетевых портов в целом. Порт — это конечная точка связи, из которой отправляются или принимаются передачи данных. У устройств есть много разных портов, каждый из которых идентифицируется своим номером, как главные двери дома:
- Порт 80 для веб-трафика HTTP,
- Порт 443 по умолчанию для веб-трафика HTTPS,
- Порт 21 и 22 для протокола передачи файлов (FTP) и
- Порт 25 для исходящего простого протокола передачи почты (SMTP), например.
Когда вы посещаете веб-сайт, ваша система подключается к веб-серверу через выделенный сетевой порт (порт 80 или более безопасный порт 443, в зависимости от соединения). Затем веб-сервер отправляет информацию о веб-сайте обратно в вашу систему через тот же порт.
Порты можно открывать и закрывать через брандмауэр или другой механизм безопасности. Неиспользуемые порты следует всегда держать закрытыми, чтобы снизить риск их использования хакерами для получения доступа к вашему устройству или сети. Порты работают как главная дверь вашего дома: если вы оставите ее открытой, это может быть рискованно, так как любой может попасть в ваш дом.
Что такое порт HTTPS 443? Все, что вам нужно знать
Теперь, когда вы лучше понимаете, как работают порты и для чего они используются, мы можем перейти к делу и начать исследовать мир HTTPS-порта 443.
Вы заметили значок замка? рядом с URL-адресом в адресной строке вашего браузера, когда вы открыли эту страницу? Если вы присмотритесь, вы также увидите, что веб-адрес начинается с «HTTPS». Это означает, что вы подключены к CheapSSLsecurity.com через стандартный порт HTTPS 443 и что веб-сайт использует сертификат безопасности веб-сайта.
Как информация i отображается злоумышленнику через соединения HTTP (небезопасное) и HTTPS (безопасное). Каждый раз, когда вы посещаете веб-сайт, даже когда вы выполняете веб-поиск, вы используете порт HTTP или HTTPS для доступа к сайту. HTTP — небезопасный протокол, тогда как HTTPS — безопасный протокол. С портом 443 соединение намного более безопасно, так как информация шифруется с помощью SSL/TLS (безопасность уровня защищенных сокетов/транспортного уровня). С портом 80 вся информация передается в виде открытого текста и доступна любому для просмотра.
Порт 443 является глобальным стандартным портом для трафика HTTPS. Все федеральные общедоступные домены и субдомены США, доступные для публики, в настоящее время переходят на HTTPS. На конец января 2022 года 95% продуктов Google уже работали на зашифрованном трафике, а 99% страниц в Chrome загружаются по HTTPS-соединениям и постоянно растет.
Источник изображения: Google Transparency Report Источник изображения: Google Transparency ReportЕсли порт 443 недоступен, соединение может автоматически переключиться на порт 80, но только в том случае, если конфигурация веб-сайта допускает такой тип небезопасного соединения. В противном случае вы, скорее всего, получите предупреждающее сообщение.
Давайте продолжим и выясним, почему этот стандартный порт HTTPS может иметь решающее значение для успеха онлайн-бизнеса.
Почему порт 443 HTTPS имеет значение
Все мы уже знаем, насколько выгодным может быть зашифрованное соединение, прежде всего, когда мы имеем дело с конфиденциальной информацией, такой как данные для входа в систему, номера банковских счетов, пароли и многое другое. Но почему это так важно для всех организаций, владеющих веб-сайтом, и особенно для предприятий электронной коммерции?
- Обеспечивает безопасность платежей благодаря сертификату SSL и зашифрованному соединению . Если у вас есть онлайн-бизнес и вы хотите, чтобы ваши пользователи могли оплачивать ваши услуги или товары с помощью дебетовых и/или кредитных карт, вы должны иметь сертификат SSL и зашифровать свои данные. Почему? Потому что это требование Стандартов безопасности данных индустрии платежных карт (PCI DSS). Вы бы чувствовали себя уверенно, вводя информацию о кредитной карте на сайте, зная, что она будет передана в виде открытого текста? Бьюсь об заклад, вы бы этого не сделали, так почему вы должны ожидать, что ваши клиенты будут чувствовать себя комфортно, делая это?
- Это убеждает ваших клиентов в том, что их данные защищены, и повышает вероятность того, что они снова купят у вас. Люди с большей вероятностью совершат покупки на веб-сайтах, где, по их мнению, их данные находятся в безопасности, как показал опрос Axway Global Consumer Survey.
На вопрос 75% респондентов ответили, что прекратят сотрудничество с компаниями, которые столкнулись с утечкой данных.
- Обеспечивает безопасность данных при передаче и помогает смягчить атаки «человек посередине». HTTPS смягчает атаки посредника, шифруя и аутентифицируя данные при их передаче. Это предотвращает расшифровку данных и перехват трафика. Со стороны клиента важно помнить, что замок в адресной строке браузера и HTTPS не могут на 100% гарантировать подлинность веб-сайта. Кто-то всегда может использовать бесплатный законный сертификат SSL/TLS на поддельной странице, чтобы обмануть пользователей и выдать его за подлинный. Однако HTTPS остается намного безопаснее, чем аналогичная веб-страница только для HTTP.
- Повышает видимость в Google, поднимая ваш веб-сайт на более высокие позиции в результатах поиска . В 2014 году Google обновил свой алгоритм ранжирования. Поисковая система с самым высоким рейтингом добавила HTTPS в качестве новой метрики для результатов поиска.
С тех пор веб-сайты, зашифрованные с помощью HTTPS, занимают более высокие позиции в поиске и рекламе Google по сравнению с веб-сайтами, использующими HTTP. Поэтому с HTTPS у вашего онлайн-бизнеса будет больше шансов выделиться среди высококонкурентного и переполненного онлайн-рынка, что приведет к увеличению продаж.
- Это может помочь повысить коэффициент конверсии за счет повышения доверия клиентов . Подумайте об этом: если бы вам пришлось покупать дорогой смартфон в Интернете, какой веб-сайт вы бы выбрали:
- Веб-сайт 1, который использует небезопасный протокол HTTP, и все транзакции проходят через порт 80
- Веб-сайт 2, который имеет URL-адрес, начинающийся с HTTPS (защищенный протокол), и все транзакции проходят через порт 443
Думаю, я уже знаю ответ. Недавнее исследование юзабилити электронной коммерции Baymard подтверждает это, показывая, что 18% клиентов не завершают покупку, если они не доверяют сайту. Почему? Потому что при онлайн-покупках безопасность и доверие оказывают большое влияние на выбор и потраченную сумму.
- Это поможет вам избавиться от предупреждения «небезопасно», отображаемого браузерами, и таким образом избежать потери клиентов из-за недоверия . Уже несколько лет Chrome, которым пользуются более 60% всех интернет-пользователей по всему миру, помечает веб-сайты и онлайн-формы, поддерживающие только HTTP, как небезопасные. Google также помечает веб-сайты без SSL-сертификатов как опасные. Представьте себе, что чувствовал бы клиент, когда перед вводом данных своей кредитной карты его браузер отображал бы предупреждение о том, что сайт небезопасен. Не хорошо, верно?
HTTPS-порт 443 дает много других преимуществ, но поскольку нет ничего идеального, даже порт 443 имеет свои ограничения. Просто для примера, он не сможет гарантировать вам 100% защиту от любой формы кибератаки: в реальном мире это просто невозможно.
Как однажды сказал Бенджамин Франклин: «Унция профилактики стоит фунта лечения». Поэтому стоит приложить дополнительные усилия для переноса вашего сайта на стандартный порт HTTPS.
Но как работает HTTPS-порт 443? Давайте немного разберемся в технике и выясним это.
Как работает стандартный порт HTTPS 443
Мы уже говорили, что когда вы заходите на сайт через порт 433, вся передача данных шифруется. Как? За счет использования асимметричного шифрования для безопасного обмена информацией. После этого обе стороны переключаются на более быстрое и менее ресурсоемкое симметричное шифрование. Короче говоря, алгоритм в сочетании с криптографическим ключом преобразует исходные данные в нечитаемый вывод случайных чисел, специальных символов и букв, которые может расшифровать только владелец ключа.
Базовый обзор того, как работает асимметричное шифрование. Однако, чтобы иметь возможность установить зашифрованное соединение, браузер и сервер должны сначала согласовать безопасный обмен информацией. Это делается с помощью процесса рукопожатия SSL/TLS.
Время согласования: пошаговый обзор рукопожатия SSL/TLS
В ходе этого процесса клиент и сервер SSL/TLS согласовывают используемую версию протокола и набор шифров (набор алгоритмов) будет использоваться для шифрования связи, аутентификации сервера и обмена секретными ключами. В зависимости от поддерживаемого набора шифров, используемой версии TLS и выбранного алгоритма ключа точные шаги могут различаться. Давайте рассмотрим базовую версию рукопожатия TLS 1.2 в качестве примера того, как работает этот процесс:
Браузер начинает отправлять приветственное сообщение на сервер. вычисление. Сервер отвечает приветственным сообщением Наряду с этим первым ответом сервер также отправляет сообщения, содержащие его сертификат SSL, выбранный набор шифров и строку случайных байтов (случайный выбор сервера). Если у браузера и сервера нет общих возможностей безопасной связи, сервер тут же разорвет соединение.
Браузер отправляет случайную строку байтов (предварительный секрет), зашифрованную с помощью открытого ключа сервера, включенного в сертификат SSL. Сервер расшифровывает его, и обе стороны генерируют сеансовые ключи.
Обмен готовым сообщением завершен, и процесс завершенИ браузер, и сервер отправляют готовое сообщение, зашифрованное соответственно закрытым ключом и сеансовым ключом, указывающее, что процесс установления связи завершен. Сервер отправляет обратно сообщение, чтобы сообщить браузеру, что сейчас он использует переход на безопасный канал связи.
Безопасное шифрование достигнутоБезопасное симметричное шифрование успешно настроено. С этого момента:
- Вся информация, которой обмениваются браузер и сервер, будет зашифрована и защищена от посторонних глаз.
- Каждый обмен информацией будет осуществляться с использованием авторизованного алгоритма и ключей.
- В адресной строке появится небольшой замок, подтверждающий пользователю, что веб-сайт, который он посещает, использует безопасное соединение.
Примечание: Более поздний процесс рукопожатия TLS 1.3 похож на TLS 1.2, но он быстрее, так как включает один круговой обход вместо трех. Узнайте больше об этом в нашей статье «TLS 1.3: все, что вам нужно знать».
Хьюстон, у нас проблемаЧто произойдет, если что-то пойдет не так? В случае проблем с сертификатом (например, срок действия сертификата истек, он неверен или неправильно настроен) пользователь получит сообщение об ошибке рукопожатия и безопасное соединение не будет установлено.
Наиболее распространенные причины сбоя рукопожатия SSL и предлагаемые решения:
Причины сбоя рукопожатия SSL/TLS | Что делать, чтобы устранить эти проблемы |
Сертификат недействителен.![]() | Владелец веб-сайта должен проверить данные вашего SSL-сертификата и убедиться, что он по-прежнему действителен. |
Браузер настроен на неправильную дату или время. | Пользователь должен исправить дату или время в своем браузере. |
Браузер и сервер не поддерживают одну и ту же версию SSL. | Пользователь должен обновить версию SSL своего браузера. |
Браузер и сервер используют разные наборы шифров. | Пользователь и владелец веб-сайта должны проверить, какие наборы шифров они поддерживают. |
Соединение перехватывается третьей стороной на стороне браузера. | Здесь мы должны быть очень осторожны, поскольку это может быть случай атаки «человек посередине», о которой мы упоминали ранее. Если это не так: пользователь может создать исключение и внести сайт в белый список, но только в том случае, если он на 100% уверен, что этот перехват не является вредоносным (например, неправильная конфигурация брандмауэра).![]() |
Браузер имеет конфигурацию, вызывающую сбой рукопожатия. | Пользователь должен добавить веб-сайт в свой список разрешенных или попробовать другой браузер. |
Чего не делает порт HTTPS 443
При работе с конфиденциальными данными в Интернете элементарных мер предосторожности никогда не бывает достаточно. Поэтому важно помнить, что HTTPS не может защитить:
- Он не защищает пользователей от атак с использованием отпечатков пальцев.
- Некоторая менее конфиденциальная информация все еще может быть прочитана (и использована не по назначению) злоумышленниками:
- Какие веб-сайты вы посещаете,
- Ваш IP-адрес и местоположение,
- Как часто вы посещаете веб-сайты,
- Размер сообщения.
- Мы не можем гарантировать, что веб-сайт контролируется мошенником.
И последнее, но не менее важное: использование HTTPS-порта 443 не сделает ваш просмотр приватным.
Заключительные мысли о вашем руководстве по HTTPS, порт 443
Как видите, установка HTTPS-соединения через порт 443 не только добавит дополнительный уровень безопасности вашему онлайн-бизнесу. Видимость вашего веб-сайта улучшится, а также повысится ваш авторитет и доверие клиентов.
Интернет-магазины будут продолжать расти. Поскольку большинство клиентов дважды думают, прежде чем покупать продукты или услуги на небезопасных веб-сайтах из-за постоянно растущего числа утечек данных, обеспечение пуленепробиваемой и безопасной транзакции стало критически важным для успеха каждого интернет-магазина.
Скажи нет этим красным предупреждающим сообщениям «этот веб-сайт небезопасен»! Предложите своим клиентам удобные и безопасные покупки с помощью HTTPS-порта 443.
Ворота в новую вселенную
Наша задача в Wordfence — защитить более 4 миллионов веб-сайтов WordPress и обеспечить их безопасность.
Вы можете найти довольно исчерпывающий список портов TCP и UDP в Википедии, но ради этого обсуждения давайте сосредоточимся на нескольких самых популярных портах:
- 20 и 21 — FTP
- 22 – СШ
- 23 – (Шучу. Вам лучше не запускать Telnet)
- 25 — Электронная почта через SMTP
- 53 — DNS
- 80 — незашифрованная сеть
- 110 — POP3 (для старых почтовых клиентов)
- 443 — Интернет зашифрован через TLS
- 445 — совместное использование Active Directory или SMB
- 993 — IMAP (для почтовых клиентов)
- 3306 — MySQL
- 6378 — Редис
- 11211 — Memcached
Если вы пробежитесь по этому списку, то заметите кое-что интересное. Варианты, доступные вам для запуска служб на большинстве этих портов, весьма ограничены. Некоторые из них специфичны для одного приложения, например Redis. Другие, такие как SMTP, предоставляют ограниченное количество приложений, либо проприетарных, либо с открытым исходным кодом. В обоих случаях вы можете изменить конфигурацию приложения, но редко можно написать собственное приложение для одного из этих портов. Кроме порта 443.
В случае портов 443 и 80 у вас есть ограниченный диапазон веб-серверов, прослушивающих эти порты, но пользователи пишут огромное количество специализированных приложений на порту 443 и имеют огромный выбор приложений, которые они могут разместить. на этом порту. Все, от WordPress до Drupal, Joomla и многого другого. Существуют огромные списки систем управления контентом.
Мало того, что у вас есть широкий спектр готовых веб-приложений, которые вы можете запускать через порт 443 или (если вы глупы) порт 80, у вас также есть ряд языков, на которых они могут быть закодированы, или в котором вы можете написать свое собственное веб-приложение. Имейте в виду, что веб-сервер в этом случае очень похож на сервер SSH или IMAP в том смысле, что он прослушивает порт и обрабатывает соединения, но разница в том, что он передает выполнение этим языкам, их различным средам разработки. и, наконец, приложение, написанное разработчиком для обработки входящего запроса.
При использовании SSH, SMTP, FTP, IMAP, MySQL, Redis и большинства других служб процесс, прослушивающий порт, — это процесс, который обрабатывает запрос. С веб-портами процесс, прослушивающий порт, делегирует входящее соединение другому приложению, обычно написанному на другом языке, работающему на уровне приложения, которое является частью чрезвычайно большой и разнообразной экосистемы веб-приложений.
Сама по себе эта концепция — что приложения, прослушивающие веб-порты, чрезвычайно разнообразны и либо самодельные, либо выбраны из большой и разнообразной экосистемы — создает уникальные проблемы безопасности. В случае, скажем, Redis, вы можете беспокоиться о том, чтобы запустить безопасную версию Redis и убедиться, что она не настроена неправильно. В случае с веб-сервером у вас может быть 50 экземпляров приложений, написанных на двух языках от пяти разных поставщиков на одном и том же порту, которые все должны быть правильно настроены, иметь свои уровни исправлений и быть написаны с использованием методов безопасного кодирования.
Как будто это не делает веб-порты достаточно сложными, они также по большей части общедоступны. Если оставить в стороне внутренние веб-сайты, возможно, большинство веб-сайтов получают свою ценность от того, что делают услуги доступными для пользователей в Интернете, будучи общедоступными. Если вы рассмотрите список портов, который у меня есть выше, или в статье Википедии, на которую я ссылаюсь, многие из этих портов открыты только во внутренних сетях или имеют доступ к ним, если они внешние. Веб-порты для общедоступных веб-сайтов по самой своей природе должны быть общедоступными, чтобы они были полезными. Существуют определенные общедоступные службы, такие как SMTP или DNS, но, как я упоминал выше, в этих случаях сервер, который прослушивает порт, является сервером, обрабатывающим запрос.
Еще одна проблема при обеспечении безопасности веб-сайтов заключается в том, что часто денежные активы и активы данных, доступные злоумышленнику при взломе веб-сайта, превышают активы, которые он может получить, взламывая корпоративную сеть. Вы видите это на веб-сайтах электронной коммерции с большими объемами, где малый бизнес обрабатывает большое количество транзакций электронной коммерции в Интернете на сумму менее 100 долларов США. Если злоумышленник скомпрометирует свою корпоративную сеть через утечку учетных данных AWS, он может получить доступ к банковскому счету компании и интеллектуальной собственности компании, зашифровать данные компании с помощью программы-вымогателя или, возможно, даже получить PII клиента. Но, взломав веб-сайт электронной коммерции, они могут получить доступ к номерам кредитных карт в полете, которые гораздо легче продать, и когда сумма доступного кредита по всем картам превышает все активы малого бизнеса, включая сумма выкупа, которую бизнес может заплатить.
Давайте не будем сбрасывать со счетов такие нарушения, как взлом Equifax в 2017 году, который скомпрометировал 163 миллиона записей граждан США, Великобритании и Канады. Это было чрезвычайно ценно для нападавших. Но такие цели встречаются редко, а Интернет представляет собой среду, богатую целями. Это третий момент, который я хотел бы отметить в этом посте. В то время как организация может запускать несколько сервисов на других портах, многие компании, в частности с хостинг-провайдерами, запускают большое количество веб-приложений. И у человека или компании гораздо больше шансов, что служба будет работать через веб-порт, чем через любой другой порт. У многих из нас есть веб-сайты, но сколько из нас используют собственный DNS, SMTP, Redis или другую службу, прослушивающую порт, отличный от 80 или 443? Большинство из нас, кто запускает веб-сайты, также используют MySQL на порту 3306, но этот порт не должен быть общедоступным, если он настроен правильно.
То, что безопасность порта 443 отличается, стало ясно для нас в Wordfence за годы, когда мы отследили и каталогизировали огромное количество вариантов вредоносных программ, веб-уязвимостей и широкий спектр тактик, методов и процедур (TTP), которые злоумышленники таргетинг на использование веб-приложений. Большинство из них не имеют никакого отношения к веб-серверу, прослушивающему порт 443, и почти все они имеют тесную связь с веб-приложением, которому веб-сервер передает управление после установления связи.
Я надеюсь, что этот пост поможет вам по-новому взглянуть на порт 443 и другой небезопасный порт (80), который мы, надеюсь, не используем. Порт 443 — это не просто еще один сервис. Фактически, это ворота в совершенно новую вселенную языков программирования, сред разработки и веб-приложений.
В большинстве случаев ворота в эту новую вселенную общедоступны.
После того, как злоумышленник проходит через этот шлюз, полезным способом думать о веб-приложениях, размещенных на сервере, является то, что каждое приложение является отдельной службой, для которой необходимо поддерживать свой уровень исправлений, правильно настраивать и удалять если он не используется, чтобы уменьшить доступную поверхность атаки.
Если вы веб-разработчик, вы, возможно, уже так думаете, и если что, вы можете быть виновны в пренебрежении службами на портах, отличных от порта 80 или 443.