Настройка брандмауэра Windows для разрешения доступа к SQL Server
Системы брандмауэра помогают предотвратить несанкционированный доступ к ресурсам компьютера. Если брандмауэр включен, но неправильно настроен, попытки подключения к SQL Server могут быть заблокированы.
Чтобы получить доступ к экземпляру SQL Server через брандмауэр, необходимо настроить брандмауэр на компьютере под управлением SQL Server. Брандмауэр является компонентом Microsoft Windows. Вы также можете установить брандмауэр от другого поставщика. В этой статье описывается настройка брандмауэра Windows, но основные принципы применяются к другим программам брандмауэра.
В этой статье представлен обзор конфигурации брандмауэра и приведены сведения, интересующие администратора SQL Server. Дополнительные сведения и официальные данные о брандмауэрах см. в документации по брандмауэру, например в разделе Руководство по безопасности для развертывания брандмауэра Windows.
Пользователи, знакомые с управлением брандмауэром Windows и знающие, какие параметры брандмауэра они хотят настроить, могут перейти напрямую к более сложным статьям:
- Настройка брандмауэра Windows для доступа к компоненту Database Engine
- Настройка брандмауэра Windows на разрешение доступа к службам Analysis Services
- настроить брандмауэр для доступа к серверу отчетов
Основные сведения о брандмауэре
Брандмауэр проверяет входящие пакеты на соответствие следующему набору правил:
- Если пакет соответствует стандартам, заданным правилами, то брандмауэр передает его протоколу TCP/IP для дальнейшей обработки.
- Пакет не соответствует стандартам, заданным в правилах.
- В этом случае брандмауэр отклоняет пакет. Если включено ведение журнала, в файле журнала брандмауэра создается соответствующая запись.
Список разрешенного трафика заполняется одним из следующих способов.
- Автоматически. Когда защищенный брандмауэром компьютер инициирует соединение, брандмауэр добавляет в список запись, чтобы разрешить ответ. Ответ считается запрашиваемым трафиком, и ничего настраивать не требуется.
- Вручную: администратор настраивает исключения для брандмауэра. Это открывает доступ к определенным программам или портам на вашем компьютере. В этом случае компьютер принимает весь входящий трафик, выполняя роль сервера, прослушивателя или однорангового узла. Необходимо выполнить настройку для подключения к SQL Server.
Выбор стратегии брандмауэра является более сложной задачей и не сводится лишь к открытию или закрытию портов. При выборе стратегии брандмауэра для предприятия необходимо обязательно рассмотреть все доступные правила и параметры конфигурации. В этой статье не рассматриваются все возможные параметры брандмауэра. Рекомендуем ознакомиться со следующими документами:
- Руководство по развертыванию брандмауэра Windows
- Руководство по проектированию для брандмауэра Windows
- Основные сведения об изоляции серверов и доменов
Параметры брандмауэра по умолчанию
Первым шагом при планировании конфигурации брандмауэра является определение его текущего состояния в операционной системе. Если операционная система была обновлена с предыдущей версии, в ней могли сохраниться старые настройки брандмауэра. Изменять параметры брандмауэра в домене может групповая политика или администратор.
Включение брандмауэра может повлиять на общий доступ к файлам и принтерам, подключения к удаленному рабочему столу и работу других программ, которым необходим доступ к компьютеру. Администратор должен просмотреть все приложения, которые работают на компьютере, прежде чем приступать к настройке параметров брандмауэра.
Программы для настройки брандмауэра
Настройте параметры брандмауэра Windows с помощью консоли управления (MMC) или netsh.
- Консоль управления (MMC) Оснастка «Брандмауэр Windows в режиме повышенной безопасности» позволяет настраивать дополнительные параметры брандмауэра. Эта оснастка представляет большинство параметров брандмауэра и в удобной форме, а также все профили брандмауэра. Дополнительные сведения см. в разделе Использование оснастки «Брандмауэр Windows в режиме повышенной безопасности» далее в этой статье.
- netshNetsh.exe — это средство Администратор istrator для настройки и мониторинга компьютеров под управлением Windows в командной строке или с помощью пакетного файла. При использовании средства netsh вводимые контекстные команды направляются соответствующим вспомогательным приложениям, которые их выполняют. Вспомогательное приложение — это файл библиотеки динамической компоновки (DLL) для расширения функциональных возможностей. Вспомогательное приложение обеспечивает настройку, мониторинг и поддержку различных служб, служебных программ и протоколов для средства netsh. Все операционные системы, поддерживающие SQL Server, имеют вспомогательный сервер брандмауэра. Windows Server 2008 также имеет расширенный вспомогательный сервер брандмауэра с именем advfirewall. Многие из описанных параметров конфигурации можно настроить с помощью средства netsh. Например, выполните в командной строке следующий скрипт, чтобы открыть TCP-порт 1433:
netsh firewall set portopening protocol = TCP port = 1433 name = SQLPort mode = ENABLE scope = SUBNET profile = CURRENTАналогичный пример, использующий брандмауэр Windows для модуля поддержки повышенной безопасности:
netsh advfirewall firewall add rule name = SQLPort dir = in protocol = tcp action = allow localport = 1433 remoteip = localsubnet profile = DOMAIN- Синтаксис, контексты и форматирование команд Netsh
- Использование контекста netsh advfirewall firewall вместо контекста netsh firewall для управления работой брандмауэра Windows в операционной системе Windows Server 2008 или Windows Vista
New-NetFirewallRule -DisplayName "SQLServer default instance" -Direction Inbound -LocalPort 1433 -Protocol TCP -Action Allow New-NetFirewallRule -DisplayName "SQLServer Browser service" -Direction Inbound -LocalPort 1434 -Protocol UDP -Action AllowПорты, используемые SQL Server
В следующих таблицах можно определить порты, используемые SQL Server.
Порты, используемые ядро СУБД
По умолчанию типичные порты, используемые SQL Server и связанными службами ядра СУБД: TCP 1433, 4022, 135, 1434, UDP 1434. В таблице ниже эти порты описаны подробно. Именованный экземпляр использует динамические порты.
В следующей таблице перечислены порты, которые часто используются ядро СУБД.
SELECT name, protocol_desc, port, state_desc
SELECT name, protocol_desc, port, state_desc FROM sys.tcp_endpoints
Пошаговые инструкции по настройке брандмауэра Windows для ядро СУБД см. в разделе «Настройка брандмауэра Windows для ядро СУБД Access».
Динамические порты
По умолчанию именованные экземпляры (включая SQL Server Express) используют динамические порты. означает каждый раз при запуске ядро СУБД, он определяет доступный порт и использует этот номер порта. Если именованный экземпляр является единственным экземпляром установленного ядро СУБД, он, вероятно, будет использовать TCP-порт 1433. Если установлены другие экземпляры ядро СУБД, он, вероятно, будет использовать другой TCP-порт. Так как выбранный порт может изменяться при каждом запуске ядро СУБД, сложно настроить брандмауэр для включения доступа к правильному номеру порта. Если используется брандмауэр, мы рекомендуем перенастроить ядро СУБД для использования одного и того же номера порта каждый раз. Рекомендуется использовать фиксированный или статический порт. Дополнительные сведения см. в разделе Настройка сервера для прослушивания указанного TCP-порта (диспетчер конфигурации SQL Server).
Альтернативой настройке именованного экземпляра для прослушивания фиксированного порта является создание исключения в брандмауэре для программы SQL Server, например sqlservr.exe (для ядро СУБД). Номер порта не будет отображаться в столбце Локальный порт на странице Правила для входящего трафика при использовании оснастки MMC «Брандмауэр Windows в режиме повышенной безопасности». Аудит открытых портов может быть сложной задачей. Еще одно соображение заключается в том, что пакет обновления или накопительное обновление может изменить путь к исполняемому файлу SQL Server и сделать правило брандмауэра недействительным.
Чтобы добавить исключение для SQL Server с помощью брандмауэра Windows с расширенной безопасностью, см . статью «Использование брандмауэра Windows с оснасткой расширенной безопасности» далее в этой статье.
Порты, используемые службами Analysis Services
По умолчанию типичные порты, используемые службами SQL Server Analysis Services и связанными службами: TCP 2382, 2383, 80, 443. В таблице ниже эти порты описаны подробно.
В следующей таблице перечислены порты, которые часто используются службами Analysis Services.
Если пользователи получают доступ к службам Analysis Services через IIS и Интернет, необходимо открыть порт, на котором выполняется прослушивание СЛУЖБ IIS. Затем нужно указать порт в строке подключения клиента. В этом случае для прямого доступа к службам Analysis Services не нужно открывать порты. Необходимо ограничить доступ к порту по умолчанию 2389, порту 2382 и другим портам, доступ к которым не требуется.
Пошаговые инструкции по настройке брандмауэра Windows для служб Analysis Services см. в разделе «Настройка брандмауэра Windows для разрешения доступа к службам Analysis Services».
Порты, используемые службами Reporting Services
По умолчанию SQL Server Reporting Services и связанные службы обычно используют порты TCP 80 и 443. В таблице ниже эти порты описаны подробно.
В следующей таблице перечислены порты, которые часто используются службами Reporting Services.
Компонент Порт Комментарии Веб-службы Reporting Services TCP-порт 80 Используется для HTTP-подключения к службам Reporting Services по URL-адресу. Не рекомендуется использовать предварительно настроенное правило Службы Интернета (HTTP). Дополнительные сведения см. в разделе Взаимодействие с другими правилами брандмауэра ниже. Службы Reporting Services, настроенные для использования через HTTPS TCP-порт 443 Используется для HTTPS-соединения по URL-адресу. HTTPS представляет собой HTTP-соединение, защищенное по протоколу TSL. Не рекомендуется использовать предварительно настроенное правило Защищенные службы Интернета (HTTP). Дополнительные сведения см. в разделе Взаимодействие с другими правилами брандмауэра ниже. При подключении служб Reporting Services к экземпляру ядро СУБД или служб Analysis Services необходимо также открыть соответствующие порты для этих служб. Пошаговые инструкции по настройке брандмауэра Windows для служб Reporting Services позволяют настроить брандмауэр для доступа к серверу отчетов.
Порты, используемые службами Integration Services
В следующей таблице перечислены порты, используемые службой Integration Services.
Пошаговые инструкции по настройке брандмауэра Windows для службы Integration Services см. в статье Служба Integration Services (служба SSIS).
Другие порты и службы
В следующей таблице перечислены порты и службы, от которые может зависеть SQL Server.
Свойство UnicastResponsesToMulticastBroadcastDisabled интерфейса INetFwProfile управляет работой брандмауэра и одноадресными ответами на широковещательные (или многоадресные) UDP-запросы. Возможны два варианта.
Если этот параметр имеет значение TRUE, то одноадресные ответы на широковещательные запросы запрещены. Перечисление служб завершится ошибкой.
Особые вопросы для порта 135
При использовании RPC с транспортным протоколом TCP/IP или UDP/IP входящие порты динамически назначаются системным службам по мере надобности. Используются порты TCP/IP и UDP/IP с номерами выше 1024. Эти порты называются «случайными RPC-портами». В этом случае RPC-клиент определяет порт, назначенный серверу, через сопоставитель конечных точек RPC. Для некоторых служб, работающих через протокол RPC, можно настроить использование определенного фиксированного порта. Можно также ограничить диапазон портов, динамически назначаемых RPC и не зависящих от службы. Поскольку порт 135 используется для многих служб, он часто подвергается атакам злоумышленников. В случае открытия порта 135 рекомендуется ограничить область действия правила брандмауэра.
Дополнительные сведения о порте 135 см. в следующих ресурсах.
- Общие сведения о службе и требования к сетевым портам в системе Windows Server
- Удаленный вызов процедур (RPC)
- Настройка динамического выделения портов RPC для работы с брандмауэром
Взаимодействие с другими правилами брандмауэра
Настройка брандмауэра Windows производится на основе правил и групп правил. Каждое правило или группа правил связывается с определенной программой или службой, которая может изменять или удалять это правило без вашего ведома. Например, группы правил Службы Интернета (HTTP) и Защищенные службы Интернета (HTTPS) связаны со службами IIS. Включение этих правил открывает порты 80 и 443, а функции SQL Server, зависящие от портов 80 и 443, будут работать, если эти правила включены. Однако администратор в процессе настройки служб IIS может изменить или отключить эти правила. Если вы используете порт 80 или порт 443 для SQL Server, необходимо создать собственное правило или группу правил, которая поддерживает предпочитаемую конфигурацию порта независимо от других правил IIS.
Брандмауэр Windows с оснасткой MMC расширенной безопасности разрешает любой трафик, соответствующий любому применимому правилу разрешения. Таким образом, если существуют два правила для порта 80 (с разными параметрами), то будет пропускаться трафик, соответствующий любому из них. Например, если одно правило разрешает трафик по порту 80 из локальной подсети, а другое разрешает трафик с любого адреса, то в итоге на порту 80 будет разрешен любой трафик независимо от источника. Чтобы эффективно управлять доступом к SQL Server, администраторы должны периодически проверять все правила брандмауэра, включенные на сервере.
Обзор профилей брандмауэра
В соответствии с профилями брандмауэра операционная система определяет и запоминает каждую из сетей по следующим параметрам: возможность подключения, имеющиеся подключения и категория.
Брандмауэр Windows в режиме повышенной безопасности делит сети на три типа.
- Домен: Windows может пройти проверку подлинности доступа к контроллеру домена для домена, к которому присоединен компьютер.
- Общедоступный: кроме доменных сетей все сети изначально классифицируются как общедоступные. Сети, которые представляют прямые соединения с Интернетом, являются открытыми (аэропорты, кафе и другие места открытого доступа).
- Частный: сеть, определяемая пользователем или приложением как частная. Только доверенные сети могут быть определены как частные. Обычно в качестве частной сети определяется сеть малого предприятия, домашняя сеть и т. п.
Администратор может создать профиль для каждого типа сети и задать для этих профилей разные политики брандмауэра. Одномоментно применим только один профиль. Профили применяются в следующем порядке.
- Профиль домена применяется, когда все интерфейсы проходят проверку подлинности на контроллере домена, членом которого является компьютер.
- Если все интерфейсы либо прошли проверку подлинности к контроллеру домена, либо соединены с сетями, которые определены как частные, применяется частный профиль.
- В противном случае применяется открытый профиль.
Просмотреть и настроить профили брандмауэра можно с помощью оснастки «Брандмауэр Windows в режиме повышенной безопасности». Элемент Брандмауэр Windows на панели управления позволяет настраивать только текущий профиль.
Дополнительные параметры брандмауэра с помощью элемента брандмауэра Windows в панель управления
Добавление брандмауэра позволяет ограничить открытие порта для входящих подключений с определенных компьютеров или из локальной подсети. Ограничьте область открытия портов, чтобы сделать компьютер менее уязвимым для злоумышленников.
Элемент Брандмауэр Windows на панели управления позволяет настроить только текущий профиль.
Изменение область исключения брандмауэра с помощью элемента брандмауэра Windows в панель управления
- В панели управления в элементе Брандмауэр Windows выберите на вкладке Исключения программу или порт, а затем нажмите Свойства или Изменить.
- В диалоговом окне Изменение программы или Изменение порта нажмите Изменить область.
- Выберите один из следующих параметров:
- Любой компьютер (включая компьютеры в Интернете): не рекомендуется. В этом случае любой компьютер, способный обращаться к вашему, сможет подключаться к указанной программе или порту. Этот параметр может пригодиться для передачи данных анонимным пользователям Интернета, однако он повышает уязвимость компьютера. Уязвимость повысится, если одновременно с этим параметром разрешить обход с использованием преобразования сетевых адресов (NAT), например с помощью параметра «Разрешить обход узлов».
- Только моя сеть (подсеть): это более безопасный вариант по сравнению с режимом Любой компьютер. Только компьютеры локальной подсети могут производить соединение с программой или портом.
- Пользовательский список: только компьютеры с IP-адресами, которые указаны, могут подключаться. Этот режим может быть более безопасным по сравнению с вариантом Только моя сеть (подсеть), однако клиентские компьютеры, использующие протокол DHCP, могут иногда менять IP-адреса, что приводит к невозможности подключения. При этом другой компьютер, которому не предоставлялся доступ, может принять указанный в списке IP-адрес и подключиться к нему. Вариант Настраиваемый список подходит для получения списков других серверов, для которых настроены фиксированные IP-адреса. IP-адреса могут быть подделаны злоумышленником. Эффект ограничения правил брандмауэра напрямую зависит от уровня защиты сетевой инфраструктуры.
Использование брандмауэра Windows с оснасткой «Расширенная безопасность»
Оснастка MMC «Брандмауэр Windows в режиме повышенной безопасности» позволяет настроить расширенные параметры брандмауэра. Эта оснастка включает мастер настройки правил и позволяет изменять параметры, недоступные в элементе Брандмауэр Windows из панели управления. К этим параметрам относятся:
- Параметры шифрования
- Ограничения служб.
- Ограничение соединений для компьютеров по именам.
- Ограничение соединений для определенных пользователей или профилей.
- Разрешение просмотра узлов для исключения маршрутизаторов NAT.
- Настройка правил исходящих соединений.
- Настройка правил безопасности.
- Требование протокола IPsec для входящих соединений.
Создание правила брандмауэра с помощью мастера создания правил
- В меню нажмите кнопку «Выполнить«, введите WF.msc и нажмите кнопку «ОК«.
- В левой части панели Брандмауэр Windows в режиме повышенной безопасностищелкните правой кнопкой мыши элемент Правила для входящих подключенийи выберите пункт Создать правило.
- Завершите мастер создания правила для нового входящего подключения , задав все необходимые параметры.
Добавление исключения программы для исполняемого файла SQL Server
- В меню «Пуск» наберите wf.msc. Нажмите клавишу ВВОД или выберите результат поиска «wf.msc», чтобы открыть Брандмауэр Защитника Windows в режиме повышенной безопасности.
- В левой панели щелкните Правила для входящих подключений.
- В области справа в разделе «Действия» выберите «Создать правило. «. Откроется мастер нового правила для входящего трафика.
- В разделе Тип правилавыберите Программа. Выберите Далее.
- В разделе Программа выберите Путь к программе. Нажмите кнопку Обзор и найдите файл программы SQL Server. Программа называется sqlservr.exe . Обычно он находится здесь: C:\Program Files\Microsoft SQL Server\MSSQL.\MSSQL\Binn\sqlservr.exe Выберите Далее.
- В разделе Действие выберите вариант Разрешить подключение. Выберите Далее.
- В разделе Профиль включите все три профиля. Выберите Далее.
- В поле Имявведите имя правила. Выберите Готово.
Дополнительные сведения о конечных точках см. в следующем разделе:
- Настройка компонента Database Engine на прослушивание нескольких портов TCP
- Представления каталога конечных точек (Transact-SQL)
Устранение неполадок параметров брандмауэра
Следующие средства и методы могут оказаться полезными при устранении неполадок брандмауэра.
- Действующее состояние порта является объединением всех правил, связанных с этим портом. Чтобы заблокировать доступ к порту, бывает полезно просмотреть все правила, в которых он упоминается. Просмотрите правила с помощью оснастки MMC «Брандмауэр Windows в режиме повышенной безопасности» и отсортируйте правила для входящего и исходящего трафика по номеру порта.
- Просмотрите порты, активные на компьютере, на котором работает SQL Server. Процесс проверки включает проверку того, какие порты TCP/IP прослушивают , а также проверяют состояние портов.
- Служебную программу PortQry можно использовать для вывода состояния портов TCP/IP (прослушивается, не прослушивается, фильтруется). Если порт фильтруется, служебная программа может не получить от него ответ. Скачать PortQry можно в Центре загрузки Майкрософт.
Список прослушивающих портов TCP/IP
Для определения, на каких портах ожидается передача данных, отобразите активные TCP-подключения и статистику IP-адресов, используя программу командной строки netstat.
- Откройте окно командной строки.
- В командной строке введите netstat -n -a . Элемент -n служебная программа netstat выводит адреса и номера портов активных подключений TCP в числовом виде. Коммутатор -a указывает netstat отображать порты TCP и UDP, на которых компьютер прослушивает.
См. также
- Общие сведения о службе и требования к сетевым портам в системе Windows Server
- Руководство. Настройка параметров брандмауэра (база данных SQL Microsoft Azure)
Настройка параметров брандмауэра Windows XP SP2 для работы SQL Server
Брандмауэр Windows — это средство защиты, которое отслеживает и ограничивает обмен данными между компьютером и сетью или Интернетом. Брандмауэр Windows защищает компьютер от несанкционированных попыток доступа извне.
После установки на компьютере пакета обновления Service Pack 2 (SP2) для Windows XP брандмауэр Windows по умолчанию будет включен. Это означает, что большинство программ не смогут принимать внешние запросы на соединение, если эти программы не внесены в список исключений.
Проблема
После установки на компьютере пакета обновления Service Pack 2 (SP2) для Windows XP работа с Microsoft SQL Server, установленном на этом компьютере, становится невозможной. При попытке создать новую информационную базу или подключиться к существующей выдается сообщение об ошибке:
Решение
Для восстановления работоспособности Microsoft SQL Server необходимо добавить его в список исключений брандмауэра Windows.
Чтобы добавить программу в список исключений, необходимо выполнить следующие действия:
Войти в систему с помощью учетной записи администратора.
Выбрать в меню Пуск пункт Выполнить , ввести команду Firewall.cpl и нажать кнопку ОК .
Открыть закладку Исключения .
На закладке Исключения нажать кнопку Добавить программу .Нажать кнопку Обзор , перейти в каталог Program Files\Microsoft SQL Server\Mssql\Binn\, найти программу Sqlservr.exe и нажать кнопку ОК .
Нажать кнопку ОК .
В случае если Microsoft SQL Server сконфигурирован для использования сетевой библиотеки Named Pipes, необходимо разрешить использование TCP порта 445 или сконфигурировать Microsoft SQL Server для использования сетевой библиотеки TCP/IP.
Open a Firewall Port for SQL Server
Microsoft SQL Server , often simply called SQL Server for short, is one of the three most popular enterprise-class DBMS packages. This topic is the second step in a five topic sequence showing a complete installation and then utilization of SQL Server 2017 Express from the very beginning. Please see the Install SQL Server topic for basic info on SQL Server.

Disclaimer: These topics were accurate when written, using the versions of installation software indicated. Third party packages can and do change, so this topic may be out-of-date. It is provided as an example of how such installations can be approached.
Installing SQL Server and readying it for use in typical installations involves five steps:
Open a Firewall Port for SQL Server
This is the second topic in the above sequence of steps.
In this topic, we are using a 64-bit Windows 10 system to which we have connected via Remote Desktop (RDP). This entire topic was conducted on that machine via RDP.
Local Connections or Connect through the Network?
If we have Manifold installed on the same computer on which we install SQL Server, and if we will always use our SQL Server installation from the same computer, we can skip this step. For example, if we are an individual user with only one computer and we do everything on that one computer, we can always connect to SQL Server from Manifold using a localhost designation, that is, not going through any network.
We only need to do this procedure if we want to access this SQL Server installation through the network from other computers. For example, if we work in an organization with several computers and one of them hosts this SQL Server installation but we actually do our Manifold work on a different computer, to connect from our desktop computer to the machine hosting SQL Server we have to be able to connect to it through the web.
Before You Get Started
One of the installation tips during the screens shown by the installation dialog in the Install SQL Server topic reminded us that if we will connect to our SQL Server installation from a remote computer we must accomplish prerequisites cited in the Before you get started document. That document is found in the C:\Program Files\Microsoft SQL Server\140\SSEI\Resources\ folder, as an html file called Before you get started.html — the procedures in this topic and the next topic are guided by the requirements set forth in that file.
Open a Port in Windows Defender Firewall
Microsoft’s Windows Defender Firewall will prevent connections through the network to SQL Server, so we must first configure the firewall to allow connections, and then (next topic) we must configure SQL Server to accept such connections by using TCP/IP. That is easy to do.
We will allow connections through port 1433 , the default port for SQL Server. We can use a similar procedure to open a port through the firewall for any other database, such as PostgreSQL, for which we might want to allow connections through the Windows firewall.
Launch Windows Control Pane , the full version. That is easiest to do by entering Windows Control Pane in the Windows taskbar search box for launching commands.

Choose Windows Defender Firewall . When the app launches, click on Advanced Settings in the left hand stack of choices.

Click on Inbound Rules . in the left hand pane. The illustration above appears. Click on New Rule .

Choose Port and click Next .

Enter 1433 and click Next . That is the default port for SQL Server.

Choose Allow the connection and click Next .

Leave all check boxes checked. Click Next .

Enter SQL Server , or some other suitably descriptive name which will remind us what this rule does, and click Finish .

Done. We can now close the dialogs by clicking the X buttons in the upper right corners.
We have opened a firewall port to stop Windows from blocking access to SQL Server from the network. Next, we enable TCP/IP use by SQL Server.
Next Steps
Continue this case study on installing SQL Server with the Enable TCP/IP for SQL Server topic.
Jump to the beginning of the case study: Install SQL Server
Managing SQL Ports on Your Windows Server
In this tutorial, you will learn about the ports used by SQL Server and how to open or close them on your Windows server. This way, you can be sure that your SQL Server DBMS is sufficiently protected from outside threats. Many IT projects these days will require a Database Management System (DBMS). One of the most popular is Microsoft SQL Server for its performance, simplicity and level of support. Ultimately, the Microsoft brand is generally associated with a quality product with good technical support for users. In this tutorial, we are going to look at the ports used by SQL Server and how to open and close them on both the Windows and Jotelulu firewalls. NOTE: This tutorial has been written using SQL Server 2019 running on Windows 2022. However, there should not be any major differences if you are running an older version like Windows Server 2016 or Windows Server 2019. First, we will look at the ports used by Microsoft SQL Server and the function that they are used for.
Managing SQL Server ports on a Windows server
Before you get started
- A Windows Server.
- SQL Server installed on your server.
A list of SQL ports by function
Below is a list of some of the ports that you may need to open in order for SQL Server to function correctly.
Ports used by the database engine
The ports most commonly used by SQL Server and the database engine are TCP ports 1433, 1434, 4022 and 135, and UDP port 1434. Here is an explanation of what each one does:
- Port 1433/TCP: Default instance running over TCP.
- Port 1434/TCP: Dedicated admin connection.
- Port 4022/TCP: SQL Server service broker.
- Port 135/TCP: Used by the Transact-SQL debugger.
- Port 1434/UDP: Used by the SQL browser service. Listens for incoming connections.
- Port 80/TCP: HTTP connections through a URL.
- Port 443/TCP: HTTPS connections via SSL.
- Port 5022/TCP: Database Mirroring. Also possible to use 7022/TCP.
- Port 7022/TCP: Database Mirroring. Also possible to use 5022/TCP.
- Port 21/TCP: Replication using FTP.
- Port 445/TCP: Filesharing.
- Port 137/UDP: Filesharing.
- Port 138/UDP: Filesharing.
Some ports will not need opening unless you intend to use the associated function. For example, if you are not going to use database mirroring, there is no need to open either 5022/TCP or 7022/TC.
It is also possible to establish connections using dynamic ports.
Ports used by Analysis Services
The following ports are used for Analysis Services:
- Port 2383/TCP: Used by Analysis Services for the default instance.
- Port 2382/TCP: Used by the SQL Server browser service.
- Port 80/TCP: Used when configuring Analysis Services via IIS/HTTP.
- Port 443/TCP: Used when configuring Analysis Services via IIS/HTTPS.
Ports used by Reporting Services
Here are the most commonly used ports by SQL Server and Reporting Services:
- Port 80/TCP: Used by Reporting Services web services.
- Port 443/TCP: Used by Reporting Services web services.
Ports used by Integration Services
The ports most commonly used by SQL Server and Integration Services:
- Puerto 135/TCP: Used by Remote Procedure Calls.
Other SQL Server ports and services:
Ports used by other services and functions in SQL Server.
- Port 135/TCP: Used by WMI (Windows Management Instrumentation) and MS DTC (Microsoft Distributed Transaction Coordinator).
- Port 1432/UDP: Used by the Management Studio browse button to connect to the SQL Server browser service.
- Port 500/UDP: Used by IPSec traffic.
- Port 4500/UDP: Used by IPSec traffic.
NOTE: Some of these ports can be swapped for other ones in order to protect against port scanning and other techniques used by hackers.
NOTE: You can find more information about the ports used by Microsoft SQL services on the Microsoft website.
Part 1 – Configuring SQL ports on the Windows firewall
When opening ports, the first thing to do will be to open them on the Windows firewall. Unless you’re in a laboratory environment, disabling the firewall completely is not really an option, so we will look at how to open them individually using firewall rules.
As with many IT tasks, there is more than one way to do this. You might prefer to use the graphic interface or you might prefer to use PowerShell. For the moment, we are going to use the graphic interface because it is much simpler, especially if you are not overly familiar with this kind of task. Then, later on, we will look at how to use the command prompt to perform the same operation.
First, we need to load the Windows Firewall settings. Click on the search bar, type “Firewall” (1) and click on “Windows Defender Firewall” (2).

Launch Windows Defender Firewall from the search bar
Then, click on “Advanced settings” (3).

Open Advanced Settings in Windows Defender Firewall
You will now see a window titled “Windows Defender Firewall with Advanced Security”. At the top of the left-hand pane, click on “Inbound Rules” (4). Then, on the right-hand side, click on “New Rule…” (5).

Create a new inbound rule for Windows firewall
In the window that appears, select “Port” (6) and click on “Next” (7).

Select “Port” as the type of rule
In the “Protocols and ports” section, you will need to select the type of port (8), choosing either TCP or UDP. This is generally defined by the port number itself.
Next, you have the choice to open all ports for the specified protocol or enter specific ports. We absolutely do not recommend opening all ports as this could compromise security. Instead, we recommend selecting the option “Specific local ports” (9) and then entering the port number or numbers that you wish to open (10).
NOTE: If you wish to open more than one port, you need to enter them separated by commas unless they are consecutive ports, in which case, you can put the first and last ports separated by a hyphen. E.g. To open ports 80 and 443, write “80,443”. To open ports 80 to 90, write “80-90”.
Once you have done this, click on “Next” (11).

Select the port protocol and enter the port number(s)
In the “Action” section, click on “Allow the connection” (12), then click on “Next” (13).

Select “Allow the connection”
in the “Profile” section, you need to select when the rule applies (14).
There are three network profiles to choose from, and it is up to you to choose the most appropriate one for your situation.
- Domain: For devices connected to corporate domains.
- Private: For devices connected to private networks, either at home or in the workplace.
- Public: For devices connected to public networks.
Once you have done this, click on “Next” (15).

Select the types of networks that the rule will apply to
The final step is to give the rule a name (16) and a description (17). This will help you to identify your rule later and keep them well-organised. This can be particularly important if you are opening a lot of ports.
Once you have filled in these fields, click on “Finish” (18).

Give your new rule a name and a description to make it easier to identify at a later date
At this point, it is a good idea to check that your new rule appears in the list of rules (19).

Check that your new rule has been created successfully
Repeat this process for all the ports that you wish to open unless you are opening all your ports as part of a single rule.
Some readers may prefer to perform this operation using the command prompt, also known as PowerShell.
This is also a fairly straightforward process. All you need to know is the port number that you wish to open, whether it is inbound or outbound (normally inbound), and whether it is a UDP or TCP port.
With this information, you can launch PowerShell and enter the following text:
New-NetFirewallRule -DisplayName “NAME” -Direction Inbound -LocalPort PORT -Protocol PROTOCOL -Action Allow
- DisplayName “NAME”: The name that you wish to give to your new rule. This isn’t mandatory but it is good practice to give your firewall rules descriptive names.
- Direction Inbound: The direction of the port, in this case, inbound.
- LocalPort PORT: Specifying the port number, swapping “PORT” for the number.
- Protocol PROTOCOL: To specify whether it is a TCP or UDP port.
- Action Allow: The action that the firewall should take, in this case, allowing the connection.

Creating a new inbound rule for the Jotelulu firewall
In the next window, you will need to configure the following settings:
- Select network: (21) Select the network that you wish to use to establish the connection. The default option will generally be the correct one.
- IP or Network: (22) The IP or network from which the connection will be made. By default, this is set to “Any IP Address”, but we recommend limiting this by entering the IP address or range of IP addresses that you wish to allow. This is especially the case if you are not expecting any attempted connections from any other location.
- Protocol and public port: (23) The port that you want to use to connect. This is composed of the protocol (TCP or UDP), in this case, TCP, and the port number.
- Public IP: (24) The public IP of the server that will connect.
- Private (IP): (25) The private IP address of the server that will connect.
- Private port: (26) The port that we want to use to connect, in this case just the port number.
Once configured, click on “Continue” (27) to create the rule.

Configure the Jotelulu firewall for SQL Server ports
Repeat this process until you have added all the firewall rules that you need. Then check that they have been applied successfully.
Conclusion
Securing your infrastructure should be a basic priority for any business looking to avoid exposing its DBMS to unauthorised access or malicious attacks.
This tutorial explains how to manage SQL ports on your Windows server to either open or close ports.
We hope that you have found this tutorial useful. However, if you are still having problems or would like any technical information, you can get in touch with us by writing to platform@jotelulu.com or calling +34 91 133 37 10.
Thank you for choosing Jotelulu!
