Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

Połączenie zdalne przez SSMS

Termin Definicja
Połączenie zdalne przez SSMS

Zdalne połączenie przez SSMS wymaga włączonego protokołu TCP/IP i otwartego portu w zaporze serwera.

Rola SSMS w połączeniu z SQL Server

SSMS, czyli SQL Server Management Studio, jest aplikacją kliencką służącą do łączenia się z aparatem bazy danych Microsoft SQL Server. Samo zainstalowanie SSMS na komputerze użytkownika nie uruchamia zdalnego dostępu do bazy. Połączenie jest możliwe dopiero wtedy, gdy usługa SQL Server działa na komputerze serwera, nasłuchuje na określonym adresie i porcie oraz przyjmuje żądania z sieci.

W oknie logowania SSMS podaje się nazwę serwera i opcjonalnie nazwę instancji, na przykład SQLSRV01, SQLSRV01\KSIEGOWOSC albo adres IP wraz z portem w zapisie 192.168.1.20,1433. Przecinek oznacza bezpośrednie wskazanie portu TCP. Taki zapis pozwala ominąć wyszukiwanie portu przez usługę SQL Server Browser, ale tylko wtedy, gdy wskazany port rzeczywiście odpowiada konkretnej instancji SQL Server.

TCP/IP, adres nasłuchu i port instancji

Protokół TCP/IP włącza się dla właściwej instancji w narzędziu SQL Server Configuration Manager, w sekcji właściwości protokołów sieciowych. Po zmianie tego ustawienia usługa SQL Server musi zostać ponownie uruchomiona. Właściwości protokołu zawierają między innymi adresy IP, na których instancja może nasłuchiwać, oraz przypisane porty TCP. Ustawienie Enabled dla całego protokołu nie wystarcza, jeśli konkretny adres IP jest wyłączony albo nie ma prawidłowo ustawionego portu.

Instancja domyślna SQL Server często korzysta ze statycznego portu TCP 1433, lecz nie jest to bezwzględna reguła. Administrator może przypisać jej inny port, a konfiguracja powinna być sprawdzona na danym serwerze. Instancje nazwane mogą używać portów dynamicznych, dlatego numer portu może zmienić się po ponownym uruchomieniu usługi, jeśli nie ustawiono portu statycznego. W praktyce przy połączeniach zdalnych łatwiej kontrolować reguły zapory, gdy instancja ma ustalony port TCP.

Zapora systemowa i SQL Server Browser

Zapora na serwerze musi zezwalać na przychodzący ruch TCP do portu, na którym nasłuchuje dana instancja SQL Server. Otwarcie portu TCP 1433 nie zapewni dostępu do instancji działającej na innym porcie. Reguła zapory powinna być ograniczona do właściwego profilu sieciowego oraz, gdy jest to możliwe, do wymaganych adresów źródłowych. Dostępność portu można sprawdzić z komputera klienckiego narzędziem systemowym Test-NetConnection, podając adres serwera i konkretny port.

SQL Server Browser jest usługą pomocniczą używaną przede wszystkim do odnajdywania portu instancji nazwanej. Odbiera zapytania na porcie UDP 1434 i przekazuje klientowi informacje o portach skonfigurowanych dla instancji. Jeśli Browser jest wyłączony, zapora blokuje UDP 1434 albo sieć filtruje ten ruch, połączenie nadal może działać po podaniu numeru portu bezpośrednio w SSMS. Udostępnienie UDP 1434 nie zastępuje jednak reguły TCP dla właściwego portu SQL Server, ponieważ właściwa sesja z bazą odbywa się przez TCP.

Uwierzytelnianie, szyfrowanie i diagnostyka połączenia

Po odnalezieniu serwera SSMS wykonuje etap uwierzytelniania. SQL Server obsługuje uwierzytelnianie Windows oraz, gdy instancja pracuje w trybie mieszanym, uwierzytelnianie SQL Server. Konto Windows musi mieć uprawnienia w SQL Server, a konto SQL Server musi istnieć w instancji, być włączone i posiadać poprawne hasło. Błąd sieciowy, taki jak brak odpowiedzi serwera, należy odróżnić od błędu logowania, który oznacza, że serwer został osiągnięty, lecz odrzucił poświadczenia albo uprawnienia.

Współczesne wersje SQL Server mogą wymagać szyfrowania połączenia zgodnie z ustawieniami klienta i serwera. Przy szyfrowaniu opartym na certyfikacie klient musi móc zweryfikować certyfikat serwera, między innymi jego nazwę oraz łańcuch zaufania. Opcja TrustServerCertificate może pomijać weryfikację łańcucha certyfikatu, ale nie powinna być traktowana jako zamiennik prawidłowo skonfigurowanego certyfikatu w środowisku produkcyjnym. W SSMS warto sprawdzić wybrany typ uwierzytelniania, nazwę instancji, wymuszenie szyfrowania oraz komunikat błędu zamiast wielokrotnie zmieniać przypadkowe ustawienia.

Diagnostykę rozpoczyna się od potwierdzenia, że usługa właściwej instancji SQL Server jest uruchomiona. Następnie sprawdza się konfigurację TCP/IP, adres i port nasłuchu, reguły zapory oraz routing między komputerem klienckim a serwerem. Jeżeli połączenie po adresie IP i porcie działa, ale zapis z nazwą instancji nie działa, problem zwykle dotyczy rozpoznawania nazwy instancji, usługi SQL Server Browser albo rozwiązywania nazw. Jeżeli port jest osiągalny, lecz SSMS zgłasza błąd logowania, dalszej diagnostyki należy szukać w trybie uwierzytelniania, stanie konta i uprawnieniach w SQL Server.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę