Jak wyświetlić otwa...
 
Notifications
Clear all

Jak wyświetlić otwarte lub zamknięte porty za pomocą poleceń w systemach Linux

1 Posty
1 Users
0 Reactions
110 Widok
(@admin)
Member Admin
Dołączył: 5 miesięcy temu
Posty: 20
Topic starter  

Zarządzanie infrastrukturą IT nieodłącznie wiąże się z bezpieczeństwem sieci.
Porty komputera to centralny punkt przepływu informacji z programu lub Internetu do urządzenia lub innego komputera w sieci i w odwrotnym kierunku. Celem skanowania portów i sieci jest określenie organizacji adresów IP, hostów i portów, co pozwala precyzyjnie zidentyfikować luki w serwerach i zdiagnozować poziomy zabezpieczeń. Zarówno podczas skanowania sieci, jak i portów można wykryć obecność zabezpieczeń takich jak np. zapora ogniowa między serwerem a urządzeniem użytkownika.

Najbardziej znane porty to m.in. :

  • port 20 (UDP) przypisany jest protokół FTP (File Transfer Protocol) używany do przesyłania danych;
  • port 22 (TCP) przypisany jest protokół SSH (Secure Shell) wykorzystywany do bezpiecznego logowania, usług FTP i przekierowania portów;
  • port 53 (UDP) przypisano system nazw domen DNS (Domain Name System), który tłumaczy nazwy na adresy IP;
  • port 80 (TCP) przypisany jest protokół internetowy HTTP.

Jak wyświetlić otwarte lub zamknięte porty za pomocą poleceń w systemach Linux

Sprawdzanie otwartych portów za pomocą nmap

Jeżeli nie mamy to instaljemy nmap

sudo apt-get install nmap 
nmap --version

Sprawdzamy otwarte porty dla localhost

sudo nmap -sT -O localhost 

  Zamiast localhost oczywiście możemy sprawdzić porty dla konkretnegoadresu ip

sudo nmap 192.168.0.1 
nmap -open 192.168.0.1 
nmap google.com 

Sprawdzanie otwartych portów za pomocą netcat

nc -l 2389
nc localhost 2389

Sprawdzanie otwartych portów za pomocą netstat

netstat --listen 
netstat -lntu 
netstat -vaun

Nasłuchiwanie portów za pomocą lsof

lsof -i 
sudo lsof -i -P -n | grep LISTEN 
lsof -i TCP| fgrep LISTEN

Szukanie portów za pomocą polecenia ss

sudo apt install sockstat 
sockstat
netstat -an |grep LISTEN
ss -Intu

 

4 способа узнать, какие порты прослушиваются в Linux (открыты)

 
 

В рамках нашей сегодняшней статьи Вы узнаете 4 способа найти открытые порты в Linux. Открытый порт сам по себе не представляет опасности. Однако вполне может стать угрозой безопасности операционной системы, как только его начнет использовать программа. Для определения того, какая именно программа слушает конкретный порт в данный момент, существуют специальные утилиты — netstat, ss, Nmap, lsof.

Прежде всего, данный материал расскажет о четырех инструментах для выявления открытых портов. И расскажет о том, как обнаружить программное обеспечение, прослушивающее конкретные порты в операционной системе Linux.

Что такое порт

Порт — это логический объект, который является конечной точкой связи в сетевых соединениях. Он непосредственно связан с процессом или службой в операционной системе целевого устройства. При этом, любой порт способен находиться в одном из четырех возможных состояний:

  • открытом;
  • закрытом;
  • отфильтрованном (filtered);
  • нефильтрованном (unfiltered).

В том случае, если порт открыт — программное обеспечение целевого оборудования занимается тем, что прослушивает его соединения и пакеты.

Как узнать, какие порты прослушиваются / открыты в Linux

Специально для Вас мы подобрали топ-4 решений, позволяющих быстро выявлять открытые порты в Linux. А также — находить любое связанное с ними программное обеспечение.

Учимся использовать netstat

Утилита netstat (от англ. Network Statistics) — это популярный инструмент, приспособленный для анализа данных о сети в Linux и других UNIX-подобных операционных системах. Сегодня любой сетевой и системный администратор должен уметь работать с этой утилитой. В том числе — выводить на экран список открытых портов.

Устанавливаем netstat

Чтобы установить netstat — воспользуйтесь командой, соответствующей Вашему дистрибутиву Linux.

Устанавливаем netstat в Debian / Ubuntu

Для установки netstat в дистрибутивах на основе Debian / Ubuntu введите с правами суперпользователя в командную строку команды apt update и apt install:

 
 

 

После введения команды — дождитесь завершения обновления списка доступных к скачиванию пакетов программного обеспечения, а также скачивания и установки файлов программы.

 

Выводим список открытых портов в Linux с помощью Netstat

Давайте попробуем вывести в командную строку список открытых портов с помощью утилиты netstat. Для этого вводим в командную строку команду netstat с правами суперпользователя и опциями -ltupan:

Давайте проанализируем значение выбранной комбинации опций:
  • -l — выводит на экран все прослушивающиеся сокеты (сочетания IP-адреса и номера порта);
  • -t — указывает, что нужно показать все TCP-соединения сетевой подсистемы;
  • -u — указывает, что нужно показать UDP-соединения сетевой подсистемы;
  • -a — показывает только активные соединения;
  • -n — вместо названий служб показывает номера портов.

netstat узнать, какие порты прослушиваются в Linux (открыты)

Расширяем возможности netstat с помощью команды grep

Пользователь может расширить возможности утилиты netstat за счет использования фильтрации вывода — с помощью команды grep. Например, таким образом можно выяснить, какое именно ПО занимается прослушиванием конкретного порта. Для этого введите в командную строку команду  netstat с опцией -tulpan, поставьте символ конвейера (вертикальную черту — |) и добавьте команду grep с аргументом "ssh":

 
 

Также Вы можете найти все приложения, прослушивающие определенный порт. Для этого введите комбинацию команд как в прошлом примере, однако в качестве аргумента для команды grep — используйте двоеточие и номер интересующего Вас порта (к примеру, ":80")

 

 

netstat grep узнать, какие порты прослушиваются в Linux (открыты)

Читайте также: 20 команд netstat для управления сетью Linux и Windows.

Учимся использовать команду ss

Команда ss (от англ. Socket Statistics) — это еще один инструмент для Linux, позволяющий получить подробную информацию о сокетах в операционной системе. Стоит отметить, что эта утилита во многом очень похожа на netstat по своим возможностям.

Выводим список открытых портов в Linux с помощью ss

Предположим, что Вам нужно определить, какие приложения занимаются прослушиванием соединений TCP или UDP. В таком случае введите в командную строку команду ss с правами суперпользователя и опциями -lntu:

Давайте проанализируем значение выбранной комбинации опций:

  • -l — выводит на экран все прослушивающиеся сокеты;
  • -n — вместо названий служб показывает номера портов;
  • -t — указывает, что нужно показать все TCP-соединения сетевой подсистемы;
  • -u — указывает, что нужно показать все UDP-соединения сетевой подсистемы.

В данном случае значения опций аналогичны тем, которые использовались выше с утилитой netstat.

ss узнать, какие порты прослушиваются в Linux (открыты)

Узнаем с помощью ss значения pid процессов, которые прослушивают порты

Утилита ss позволяет пользователю вывести на экран список значений pid процессов, которые открыли порты. Для этого введите от имени суперпользователя в командную строку команду ss с опциями, показанными в предыдущем примере. И добавьте к ним опцию -p:

 
 

ss узнать, какие порты прослушиваются в Linux (открыты)

Читайте также:

Учимся использовать nmap

Утилита nmap — это популярный инструмент для исследования сетевой подсистемы и проверки состояния портов в UNIX-подобных ОС. Стоит отметить, что данная утилита обладает большими возможностями. И потому часто используется специалистами в сфере сетевого и системного администрирования.

Устанавливаем nmap

Для установки nmap воспользуйтесь командами, соответствующими установленному на Ваш компьютер дистрибутиву Linux.

Устанавливаем nmap в Debian / Ubuntu

При использовании дистрибутивов на основе Debian / Ubuntu — введите в командную строку с правами root команды apt update и apt install:

 
 

 

После этого следует дождаться окончания процессов скачивания и установки пакетов программного обеспечения.

Выводим список открытых портов в Linux с помощью nmap

Давайте попробуем вывести на экран список всех портов, которые прослушиваются в операционной системе Linux, с помощью утилиты nmap. Для этого введите с root-правами в командную строку команду nmap и опции -sT -sU -sV, добавив Ваш IP-адрес в качестве аргумента:

Давайте проанализируем значение выбранной комбинации опций:
  • -sT — указывает, что нужно показать все TCP-соединения;
  • -sU — указывает, что нужно показать все UDP-соединения;
  • -sV — указывает, что требуется включить обнаружение версий программного обеспечения.

 

netstat узнать, какие порты прослушиваются в Linux (открыты)

Дополнительные опции утилиты nmap

C помощью опции -p Вы сможете просканировать конкретные порты.

  • все порты с 1 по 65535 — -p-;
  • конкретный порт (например, 22) — -p22;
  • диапазон портов — -p1-22;
  • комбинацию списка UDP-портов и диапазона TCP-портов  p U:53,111,137,T:21-25.

С помощью опции -n (запрет обратного просмотра DNS) можно сократить время сканирования, которое бывает довольно продолжительным.

Читайте также:

Учимся использовать утилиту lsof

Утилита lsof (от англ. LiSt of Open Files) — это инструмент командной строки для UNIX-подобных операционных систем, предназначенный для обнаружения файлов, использующихся теми или иными процессами.

Выводим на экран все открытые IP-сокеты

С помощью данной утилиты можно вывести на экран все открытые соединения и инициировавшие их процессы в операционной системе. Для этого введите от имени суперпользователя в командную строку команду lsof с опцией -i:

lsof узнать, какие порты прослушиваются в Linux (открыты)

Выводим список процессов, прослушивающих конкретный порт с помощью lsof

Зная конкретный порт — можно легко найти программу, которая его прослушивает. Для этого введите от имени суперпользователя в командную строку команду lsof с опцией -i и добавьте к ней в качестве аргумента номер порта после двоеточия (например, :80):

Важно: обратите внимание, что вывод команды по умолчанию уже содержит и значения PID, и названия соответствующих служб.

lsof узнать, какие порты прослушиваются в Linux (открыты)

Читайте также: 10 примеров команд lsof в Linux.

This topic was modified 4 miesiące temu 2 times by admin

   
Cytat