Jak pod Linuxem sprawdzić które porty są otwarte

Po zakończeniu konfiguracji serwera dobrze jest sprawdzić czy nie wystawiono na świat usług które powinny być dostępne wyłącznie lokalnie. W takich sytuacjach bardzo przydaje się NMAP dostępny jako pakiet lub kod źródłowy do samodzielnej kompilacji.

Chesz przetestować działanie poniższych instrukcji, a nie masz dostępu do serwera Linuxowego? Po rejestacji na DigitalOcean otrzymasz 100 dolarów do wykorzystania w ciągu 60 dni, a z przyjaznym interfejsem uruchomisz ulubioną dystrybucję w ciągu paru minut.

Najprostsze wywołanie programu musi zawierać jedynie adres IP lub domenowy, zatem komenda nmap techniczny.net sprawdzi które z portów na serwerze o adresie techniczny.net są otwarte. Domyślnie program zwraca, oprócz podstawowych informacji o serwerze, listę portów do których można się podłączyć tych, które tego połączenia odmawiają.

Informacje zwracane przez NMAP pod Linuxem

Inne przykłady użycia programu to:

  • nmap 192.168.1.1 192.168.1.2 192.168.1.3 – Przekazanie więcej niż jednego adresu IP.
  • nmap 192.168.1.0/24 – Skanowanie całej podsieci.
  • nmap -A 192.168.1.1 – Określenie systemu operacyjnego.
  • nmap -F 192.168.1.1 – Szybkie skanowanie sprawdzające mniejszą ilość portów.
  • nmap -p 80 192.168.1.1 – Skanowanie konkretnego portu. Tutaj 80.
  • nmap -p T:80 192.168.1.1 – Skanowanie portu 80 TCP.
  • nmap -p 80-200 192.168.1.1 – Skanowanie zakresu portów: od 80 do 200.
  • nmap -sU -p U:500 192.168.1.1 – Skanowanie portu 500 UDP.
  • nmap -sU 192.168.1.1 – Skanowanie hosta pod kątem usług działających na UDP. Takich jak DNS, DHCP czy SNMP.
Aby polecenia z parametrem -sU działały trzeba je uruchomić z uprawnieniami roota. Konieczne zatem jest skorzystanie z polecenia sudo.