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

Порты межсетевого экрана MS SQL Server

Недавно я обнаружил, что могу быстро развернуть производственное приложение на SQL Server 2008 (EXPRESS), и у меня возникли некоторые проблемы с настройкой правил брандмауэра между нашим веб-сервером, на котором запущено приложение ASP.NET, и нашим сервером базы данных.

Все, что я могу найти в Интернете, утверждает, что мне нужны только TCP-порты 1433/1434 и UDP-порт 1434, доступные на сервере базы данных. Однако нам не удалось установить соединение между веб-приложением и базой данных только с этими портами. С помощью одного из парней из нашего центра обработки данных мы обнаружили, что трафик также идет на TCP-порт 2242 на сервере базы данных. После открытия этого порта все заработало, но мы не знаем почему.

Позже мне пришлось переустановить SQL Server из-за некоторых проблем с дисковым пространством, и я обнаружил, что проблема появилась снова - после другого сеанса с анализатором пакетов мы обнаружили, что на этот раз трафик шел на TCP-порт 4541 на сервере базы данных. Мой вопрос: есть ли какой-то параметр конфигурации, который мне не хватает на SQL-сервере, который заставляет его выбирать случайные порты? Я хотел бы, чтобы наши правила брандмауэра были максимально заблокированы, и, конечно же, мы хотели бы избежать любых загадочных проблем с подключением в будущем, особенно после запуска приложения.

Оба сервера работают под управлением Windows 2003 R2 X64.

Чтобы ответить на мой вопрос, кажется, что по умолчанию SQL Server мощь используйте порт 1433, но в моей настройке он был настроен на использование динамических портов. В этой статье объясняется, как настроить фиксированный порт:

http://msdn.microsoft.com/en-us/library/ms345327%28v=SQL.100%29.aspx

Быстрый способ проверить, на каком порту работает SQL Server, - это проверить журнал ошибок SQL Server. Есть строка, в которой говорится, что SQL Server прослушивает .... Это экземпляр по умолчанию или именованный экземпляр? SQL устанавливает экземпляр по умолчанию с 1433/1434 по умолчанию и каждый последующий экземпляр с динамическими портами.

Ну, по умолчанию прослушиватель порта 1433 отключен. Вам необходимо включить приемник 1433, прежде чем что-либо будет работать. Кроме того, если вы используете учетную запись «sa», я думаю, что эта учетная запись отключена по умолчанию. В основном вам нужно, чтобы порт 1433 был открыт для TCP. Если вы не делаете что-то другое, вам не нужно открывать порт 1434 udp через брандмауэр.