SMB port 445 vs 139 - Jak bezpiecznie udostępniać pliki?

Bruno Krupa .

13 lipca 2026

Ustawienia serwera SMB: SMB 1 nie jest zainstalowany, konfiguracja podpisywania i szyfrowania SMB, a także udostępnianie plików przez internet z SMB over QUIC.

Udostępnianie plików w sieci działa dobrze tylko wtedy, gdy protokół i zapora mówią tym samym językiem. W praktyce chodzi o SMB port, czyli najczęściej TCP/445, a w starszych konfiguracjach także o NetBIOS z portami 137-139. Poniżej wyjaśniam, co naprawdę oznaczają te porty, jak sprawdzić je na Linuksie i jak ustawić je tak, żeby działały bezpiecznie, a nie „na żywioł”.

Najkrócej: w nowoczesnej sieci pracuj głównie na 445, a 139 zostaw tylko dla zgodności wstecznej

  • 445/TCP to dziś podstawowy port dla bezpośredniego SMB over TCP.
  • 139/TCP pojawia się wtedy, gdy wchodzi NetBIOS i starsza zgodność.
  • 137/UDP i 138/UDP to elementy starego stosu NetBIOS, które zwykle nie są potrzebne w nowych wdrożeniach.
  • Na Linuksie najpierw sprawdź, czy Samba rzeczywiście nasłuchuje, zanim zaczniesz grzebać w firewallu.
  • SMB nie powinien być wystawiany do internetu bez bardzo dobrego powodu; do dostępu zdalnego lepszy jest VPN.
  • Jeśli wszystko wygląda poprawnie, a połączenie nadal nie działa, winne bywają DNS, uprawnienia albo zła ścieżka do udziału.

Jak działa SMB i dlaczego najczęściej chodzi o TCP 445

SMB to protokół udostępniania plików, drukarek i kilku innych zasobów w sieci. Najprościej mówiąc: gdy komputer ma otworzyć udział \\serwer\udział albo połączyć się z Sambą z Linuksa, komunikacja idzie właśnie tym kanałem, a dziś standardowym transportem jest TCP/445. To dlatego w większości nowoczesnych środowisk jedna poprawna reguła firewallu rozwiązuje więcej niż połowę problemów z dostępem.

Ja traktuję ten port jako punkt startowy, nie jako jedyną odpowiedź na każde pytanie o udostępnianie. Znaczenie ma też to, czy usługa słucha na wszystkich interfejsach, czy tylko na konkretnym adresie, oraz czy po drodze nie blokuje jej DNS, uwierzytelnianie albo polityka zapory. To prowadzi prosto do pytania o starsze porty NetBIOS, które nadal potrafią namieszać.

Skąd bierze się port 139 i cały zestaw NetBIOS

W starszych sieciach SMB działał przez NetBIOS, czyli dodatkową warstwę nazw i sesji. W praktyce oznacza to porty 137, 138 i 139, a czasem także 137/TCP, bo różne implementacje opisują ten stos nieco szerzej. Dziś używa się ich głównie po to, żeby utrzymać zgodność ze starszym sprzętem albo starymi konfiguracjami, a nie dlatego, że są lepszym wyborem.

Port Rola Kiedy go spotkasz
445/TCP Bezpośredni SMB over TCP Nowoczesne Windows, Samba, większość współczesnych środowisk
139/TCP Sesja SMB przez NetBIOS Starsze urządzenia, legacy konfiguracje, kompatybilność wsteczna
137/UDP Usługa nazw NetBIOS Rozwiązywanie nazw w starszych sieciach
138/UDP Datagramy NetBIOS Starsze funkcje rozgłoszeniowe i komunikacja pomocnicza

W Sambie domyślna wartość smb ports to 445 139, więc oba warianty bywają aktywne równolegle. W mojej ocenie to ważny sygnał: jeśli nie masz powodu wspierać NetBIOS, nie trzymaj go otwartego „na wszelki wypadek”. Za chwilę pokażę, jak sprawdzić, co faktycznie nasłuchuje na Linuksie.

Jak sprawdzić nasłuch i dostępność na Linuksie

Najpierw sprawdzam lokalnie, czy usługa w ogóle słucha na właściwym porcie. Potem weryfikuję to z innego hosta, bo port może być otwarty lokalnie, a mimo to zablokowany przez firewall albo filtrowanie na routerze.

systemctl status smbd
journalctl -u smbd -n 50
testparm -s
ss -tulpn | grep -E ':(445|139)\b'
smbclient -L //192.168.1.10 -U jan
nmap -Pn -p 139,445 192.168.1.10

Jeśli ss pokazuje 127.0.0.1:445, Samba słucha tylko lokalnie i zdalny klient nie ma prawa się połączyć. Jeśli widać 0.0.0.0:445 albo adres interfejsu LAN, usługa nasłuchuje poprawnie, a problem zwykle leży dalej: w firewallu, nazwie hosta, uprawnieniach albo w złej ścieżce do udziału. Ten rozdział warto przeczytać razem z zasadami bezpiecznej ekspozycji, bo otwarty port bez kontroli to szybka droga do kłopotów.

Jak bezpiecznie otworzyć udostępnianie plików w sieci

Na serwerze plików z Linuksem nie otwieram SMB szeroko „do internetu”. Otwieram je tylko tam, gdzie naprawdę trzeba: w zaufanej podsieci, na VPN-ie albo w kontrolowanym segmencie sieci. W praktyce blokuję także ruch wychodzący TCP/445 na publiczny internet, bo to ogranicza ryzyko przypadkowej ekspozycji i niepotrzebnej komunikacji.

  • Sieć lokalna - zezwalam tylko z konkretnej podsieci, na przykład z zakresu biurowego lub domowego.
  • Legacy sprzęt - zostawiam 139 tylko wtedy, gdy naprawdę mam stary klient, drukarkę albo NAS, który nie umie pracować wyłącznie na 445.
  • Dostęp zdalny - wolę VPN niż wystawianie SMB na świat. To prostsze do kontrolowania i zwykle bezpieczniejsze operacyjnie.
  • Publiczny internet - 445 nie powinien tam wisieć bez bardzo konkretnego powodu i dodatkowych zabezpieczeń.

W firewalld najwygodniej jest użyć gotowej usługi samba, a w ufw da się to zawęzić do jednej podsieci, na przykład komendą w stylu sudo ufw allow from 192.168.1.0/24 to any port 445 proto tcp. Dobrą praktyką jest też wcześniejsze ustalenie, czy naprawdę potrzebujesz NetBIOS, czy wystarczy sam 445, bo to upraszcza konfigurację i zmniejsza powierzchnię ataku. Gdy porty są już ustawione rozsądnie, zostaje jeszcze najczęstszy problem: „wszystko wygląda dobrze, a połączenie i tak nie działa”.

Co zrobić, gdy udział nie otwiera się mimo otwartego portu

Jeśli udział nie otwiera się mimo otwartego portu, nie zaczynam od zgadywania. Sprawdzam kolejno usługę, adres, nazwę i autoryzację, bo właśnie tam zwykle ginie czas.

  1. Czy usługa Samby działa i nie wywaliła się po zmianie konfiguracji.
  2. Czy serwer naprawdę nasłuchuje na 445, a nie tylko na localhost.
  3. Czy firewall przepuszcza ruch z właściwej podsieci, a nie „z całego świata”.
  4. Czy nazwa hosta i DNS wskazują właściwy adres, zwłaszcza gdy NetBIOS jest wyłączony.
  5. Czy konto ma prawa do udziału i do systemowego katalogu, a nie tylko do jednego z nich.
  6. Czy klient i serwer dogadują się co do wersji SMB, bo czasem problemem jest nie port, lecz negocjacja protokołu.

Dobrym testem jest smbclient -L, bo od razu pokazuje, czy serwer odpowiada i czy użytkownik widzi listę udziałów. Jeżeli zdalny skan pokazuje 445 jako otwarty, a lokalne połączenie nadal się wywraca, winowajcą najczęściej jest uwierzytelnianie, uprawnienie albo błędna ścieżka do udziału. To dobry moment, żeby przejść od diagnozy do ustawień, które w 2026 roku są po prostu najbardziej rozsądne.

Jakie ustawienia wybrałbym dziś na serwerze plików

Gdybym dziś konfigurował serwer plików od zera, zostawiłbym TCP/445 jako podstawę, a 139 trzymał tylko tam, gdzie naprawdę potrzebuję kompatybilności wstecznej. W typowej sieci LAN wyłączyłbym NetBIOS, ograniczył dostęp do zaufanych adresów i nie wystawiałbym Samby bezpośrednio na publiczny adres IP. Jeśli potrzebny jest dostęp spoza biura, wybrałbym VPN, a w środowiskach Windowsowych rozważyłbym SMB over QUIC tam, gdzie pasuje do infrastruktury i polityk bezpieczeństwa.

Najkrótsza wersja decyzji brzmi więc tak: 445 jest dziś standardem, 139 jest wyjątkiem, a otwarte SMB poza zaufaną siecią to ryzyko, którego nie warto zostawiać bez kontroli. Jeżeli po wdrożeniu reguł coś nadal nie działa, wróć do prostego schematu: sprawdź nasłuch, firewall, nazwę hosta i uprawnienia. W praktyce to właśnie te cztery rzeczy rozwiązują większość problemów szybciej niż jakiekolwiek zgadywanie.

FAQ - Najczęstsze pytania

Port 445 (TCP/445) to podstawowy port używany przez protokół SMB (Server Message Block) do bezpośredniego udostępniania plików, drukarek i innych zasobów w nowoczesnych sieciach. Jest to standardowy kanał komunikacji dla większości współczesnych systemów Windows i Samby na Linuksie.
Port 139 (TCP/139) jest używany przez SMB w połączeniu z NetBIOS, co było standardem w starszych sieciach. Dziś używa się go głównie do utrzymania kompatybilności wstecznej ze starszym sprzętem lub konfiguracjami, które nie obsługują bezpośredniego SMB over TCP.
Aby sprawdzić, czy Samba nasłuchuje na Linuksie, użyj komendy `ss -tulpn | grep -E ':(445|139)\b'`. Pokaże ona, czy usługa jest aktywna i na jakich portach. Jeśli widzisz `127.0.0.1:445`, Samba nasłuchuje tylko lokalnie.
Nie, wystawianie portu SMB (445 lub 139) bezpośrednio do internetu jest bardzo ryzykowne i zdecydowanie odradzane. Do zdalnego dostępu do plików zaleca się używanie VPN, który zapewnia znacznie wyższy poziom bezpieczeństwa i kontroli nad połączeniem.
Jeśli udział SMB nie działa, mimo że port jest otwarty, sprawdź kolejno: czy usługa Samby działa, czy serwer nasłuchuje na właściwym interfejsie (nie tylko localhost), czy firewall przepuszcza ruch z właściwej podsieci, czy DNS wskazuje poprawny adres oraz czy konto użytkownika ma odpowiednie uprawnienia do udziału i katalogu.
Oceń artykuł

Średnia: 0.0 / 5 · 0 ocen

Tagi

smb port smb port 445 smb port 139 konfiguracja smb linux bezpieczne udostępnianie plików smb
Autor Bruno Krupa
Bruno Krupa
Nazywam się Bruno Krupa i od 7 lat zajmuję się systemami Linux, bezpieczeństwem oraz oprogramowaniem. Moje zainteresowanie tymi tematami zaczęło się od chęci zrozumienia, jak działają technologie, które nas otaczają. Fascynuje mnie możliwość eksploracji i rozwiązywania problemów, które napotykają użytkownicy w codziennym korzystaniu z systemów operacyjnych. W moich tekstach staram się wyjaśniać złożone zagadnienia w przystępny sposób, dbając o to, aby informacje były aktualne, rzetelne i łatwe do zrozumienia. Piszę o różnych aspektach związanych z Linuxem, od podstawowych konfiguracji po bardziej zaawansowane techniki zabezpieczeń. Zawsze dokładam starań, aby moje źródła były wiarygodne, a przedstawiane treści uporządkowane i zrozumiałe dla każdego, niezależnie od poziomu zaawansowania. Wierzę, że dobrze zorganizowana wiedza może pomóc innym w lepszym zrozumieniu technologii i jej zastosowań w codziennym życiu.
Komentarze (0)
Dodaj komentarz