Очередной мануал в локальную вику и сюда. Кстати, обращаем внимание на тег
RTFM:)
На этот раз - как пропилить дырки в брандмауэре windows для доступа к sql-серверу. Пилим локально непосредственно на сервере SQL.
Создаём батник со следующим текстом:
@echo ========= SQL Server Ports ===================
@echo Enabling SQLServer default instance port 1433
netsh firewall set portopening TCP 1433 "SQLServer"
@echo Enabling Dedicated Admin Connection port 1434
netsh firewall set portopening TCP 1434 "SQL Admin Connection"
@echo Enabling conventional SQL Server Service Broker port 4022
netsh firewall set portopening TCP 4022 "SQL Service Broker"
@echo Enabling Transact-SQL Debugger/RPC port 135
netsh firewall set portopening TCP 135 "SQL Debugger/RPC"
@echo ========= Analysis Services Ports ==============
@echo Enabling SSAS Default Instance port 2383
netsh firewall set portopening TCP 2383 "Analysis Services"
@echo Enabling SQL Server Browser Service port 2382
netsh firewall set portopening TCP 2382 "SQL Browser"
@echo ========= Misc Applications ==============
@echo Enabling HTTP port 80
netsh firewall set portopening TCP 80 "HTTP"
@echo Enabling SSL port 443
netsh firewall set portopening TCP 443 "SSL"
@echo Enabling port for SQL Server Browser Service's 'Browse' Button
netsh firewall set portopening UDP 1434 "SQL Browser"
@echo Allowing multicast broadcast response on UDP (Browser Service Enumerations OK)
netsh firewall set multicastbroadcastresponse ENABLE
Сохраняем. Обзываем как OpenSqlServerPort. Запускаем с правами администратора. В процессе, кстати, нам предложат использовать синтаксис netsh advfirewall firewall, что
кагбэ всем своим видом намекает на то, что я некошерный человек и вообще редиска.
Для тех, кто не понял, поясняю на примере:
netsh firewall set portopening protocol = TCP port = 1433 name = SQLPort mode = ENABLE scope = SUBNET profile = CURRENT
Про порт 1433 проще процитировать мелкомягких: "
Этот порт открывают в брандмауэре чаще всего. Он применяется для программных соединений с экземпляром компонента Database Engine по умолчанию или именованным экземпляром, который является единственным на данном компьютере."
В случае, если вы извращенец, sql ставили не по дефолту, а создали именованный экземляр (instance), необходимо создать дополнительное правило в брандмауэре.
Сделать это можно стандартным способом: Брандмауэр - создать правило - правило для программмы - и далее по адресу %Диск, на который вы всё это засунули%\DATA\MSSQL10.SQL_ADMIN\MSSQL\Binn\sqlservr.exe
Разрешить - всё.
Профит:)
То же самое, подробнее и с описанием по портам
тут и
тут (англ.).
Have fun:)