Як перевірити порти, що використовуються в Linux

tux_question

Знати які порти використовуються в системі - це основне завдання будь-якого адміністратора. Починаючи від налаштування інтерфейсів і закінчуючи захистом від вторгнень та проходячи будь-яке усунення несправностей, яке ми можемо собі уявити, ми повинні мати можливість перевірити, чи надає порт якийсь сервіс у нашому середовищі.

Уявіть, у якій ситуації ви встановили послугу друку CUPS у вашій системі, і ви не знаєте, чи правильно служба запустилася та підняла відповідний порт 631 або додатковий 515. У цьому посібнику ми покажемо три основні команди для виявлення портів, що використовуються системою і який його статус.

Далі ми розглянемо 3 основні команди, які особливо корисні при адмініструванні будь-якої системи. Є про lsof, netstat та nmap, утиліти, які ми будемо запускати з консолі терміналу та з правами root.

Команда Lsof

Команда також є найпростішим з того, скільки ми вам позичимо, і, будучи вихідцем з Linux, базою, яку повинен знати кожен користувач. Щоб знати порти, відкриті в системі за допомогою цієї команди, потрібно ввести послідовність, подібну до наведеної нижче, яка він покаже вам різну інформацію де ми виділимо: назву програми (наприклад, sshd), розетка програми (у цьому випадку IP-адреса 10.86.128.138, пов’язана з портом 22, що є СЛУХАЮЧИМ), та ідентифікатор процесу (який буде 85379).

$ sudo lsof -i -P -n
$ sudo lsof -i -P -n | grep LISTEN

lsof-виходи

Команда Netstat

Команда NetStat дещо відрізняється у своєму синтаксисі щодо попереднього, але представляє деякі параметри набагато легше запам’ятовувати завдяки простому мнемонічному слову. Відтепер не забувайте цього слова путона, що стосується наступних характеристик:

Як змінити розмір розділу Linux
Пов'язана стаття:
Змінити розмір розділів Ubuntu
  • p: Показує з'єднання для вказаного протоколу, який може бути TCP або UDP.
  • u: Список усіх портів UDP.
  • t: Список усіх портів TCP.
  • o: Відображає таймерів.
  • n: Показує номер порту.
  • a: Відображає всі активні з'єднання в системі.

Таким чином, ввівши команду та відфільтрувавши її за допомогою труба ми можемо отримати інформацію про певний порт.

$ netstat -putona | grep numero-de-puerto

netstat_slut

Команда Nmap

Nmap Це утиліта, яку ми дозволяє проводити безліч сканувань в нашій системі і один з них, один із відкритих портів в обладнанні. Для його виконання ми повинні ввести послідовність типу nmap -sX -OY, беручи X значення T або U для підключення TCP або UDP відповідно, а значення Y - IP-адресу нашої машини (або localhost коротше). Погляньте на наступний приклад.

</pre>
$ sudo nmap -sU -O localhost
$ sudo nmap -sT -O 192.168.0.1
<pre>

За допомогою цих трьох додатків у вас вже є достатньо інструментів для визначення відкритих портів вашої машини. Чи використовуєте ви ті самі інструменти чи знаєте будь-який інший спосіб перевірки відкритих портів системи?