Что такое port linux

win-linux

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

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

Ключи:
-a выводит список всех портов
-l показывает только прослушиваемые порты
-p показывает имя программы и ее PID
-t показывает tcp порты
-u показывает udp порты
-n показывает ip адреса в числовом виде
-s выводит статистику по всем открытым портам

Пример использования:
netstat -a

Виды состояния:

ESTABLISHED — соединение установлено
SYN_SENT — сокет пытается установить соединение
SYN_RECV — начальная синхронизация соединения
FIN_WAIT1 — сокет закрыт, ожидание отключения соединения
FIN_WAIT2 — ожидание отключения удаленной стороны
TIME_WAIT — ожидание после закрытия повторной передачи отключения удаленной стороны
CLOSED — соединение закрыто, сокет не используется
CLOSE_WAIT — удаленный узел отключился, сокет скоро будет закрыт
LAST_ACK — сначала отключилась удаленная сторона, а затем сокет будет закрыт
LISTEN — сокет ожидает входящих соединений
CLOSING — закрытие сокета, точнее сокет закрыт, а затем отключился удаленный узел
UNKNOWN — состояние сокета неизвестно.

2. lsof — утилита, которая предназначена для вывода информации о том, какие файлы используются теми или иными процессами.

Ключи:
-l Идентификатор пользователя(userID) вместо имени пользователя на выходе.
-h Вывести помощь (help).
-t Получить ID процесса (ов).
-U Получить адрес сокета UNIX.
-i Показывает все открытые соединения.

Пример использования:
lsof -i

Узнаем какие процессы работают с портом 80:
lsof -i | grep 80

3. Nmap — мощный сетевой сканер, разработанный для сканирования и пентестинга удаленных узлов.

Как открыть порт в linux:
iptables -I INPUT -p tcp -m tcp —dport PORT_NUMBER -j ACCEPT
где PORT_NUMBER — это номер порта, который вы собираетесь открыть.

Как закрыть порт в linux:
iptables -A INPUT -p tcp —dport PORT_NUMBER -j DROP
где PORT_NUMBER — это номер порта, который вы собираетесь закрыть.

Можно закрыть порт для определенного интерфейса, например, eth1:
sudo iptables -A INPUT -i eth1 -p tcp —dport PORT_NUMBER -j DROP

Источник

Иллюстрированный самоучитель по Linux

Введение в порты Linux

В среде Linux каждому периферийному физическому устройству или порту подключения сопоставляется один или несколько файлов в специальном каталоге / dev. Это относится к жестким дискам, устройствам CD-ROM, параллельным и последовательным портам.

Основной принцип достаточно прост. Рассмотрим для примера жесткий диск.

В Linux каждому жесткому диску IDE присваивается имя hdx, где х принимает значения «а» (для первого диска на первичной шине IDE), «b» (для второго диска на первичной шине IDE), «с» (для первого диска на вторичной шине IDE) и т.д. Таким образом, имя главного вторичного диска – /dev/hdc.

Читайте также:  С windows regedit exe как запустить

Примечание
Жесткие SCSI-диски и SCSI-диски CD-ROM аналогичным образом обозначаются sdx
.

В каталоге /dev имеется составляющая для каждого дискового раздела. Например, второму разделу первичного подчиненного диска присваивается имя /dev/hdb2, первому разделу вторичного главного – /dev/hdcl.

Параллельные порты в Linux

Рассмотрим параллельные порты. В DOS и Windows параллельным портам присваиваются имена LPT1:, LPT2:, LPT3: и т.д. Как правило, в ПК один параллельный порт с именем LPT1:.

В Linux параллельным портам сопоставляются файлы устройств 1рх, где х – номер порта. Это основное отличие от DOS и Windows: нумерация портов начинается не с единицы, а с нуля, так что LPT1: в Linux соответствует /dev/lp0, a LPT2: – /dev/ lpl. В DOS возможна ситуация, когда единственный параллельный порт компьютера имеет имя, отличное от LPT1:; в Linux этому порту будет присвоено имя /dev/lpO, как первому доступному порту.

Теперь перейдем к последовательным портам, понимание принципов рабств которых важно для правильной установки модема.

Последовательные порты в Linux

В Linux каждому последовательному порту сопоставляется два файла устройств – для исходящих и входящих соединений. Файлы исходящих соединений называются ttySx, где х номер, начинающийся с нуля. Таким образом, порту СОМ1: из DOS в Linux соответствует /dev/ttyS0, COМ2: – /dev/ ttySl. В ранних версиях Linux последовательному порту сопоставлялся еще один файл устройства. Это файл сиах, где х – номер, начинающийся с нуля. Таким образом, в этих версиях СОМ1: соответствовали файлы /dev/ ttyS0 и /dev/cua0, COM4: – /dev/ttyS3 и dev/сuаЗ. Адреса портов сведены в таблицу 18.2.

Табл. 18.2. Последовательные порты в DOS и Linux.

Имя DOS Файлы устройств Linux Унаследованные файлы устройств
СОМ1: /dev/ttyS0 /dev/cua0
COM2: /dev/ttyS1 /dev/cua1
COM3: /dev/ttyS2 /dev/cua2
COM4: /dev/ttyS3 /dev/cua3

Но запомнить эти имена устройств для большинства людей сложно. К счастью, при конфигурировании модема большинство Linux-дистрибутивов организует связь между файлом /dev/modem и реальным устройством. Это можно проверить, выполнив команду 1s – 1 /dev/modem. Результат должен быть таким:

Примечание
В современных версиях Linux используется только файл /dev/ttySx, поддержка же /dev/cuax остается исключительно для обеспечения совместимости. Со временем надобности в поддержке этого файла не будет
.

USB-порты в Linux

Теоретически, можно подсоединить до 32 USB-модемов к Linux-компьютеру. Чтобы использовать USB-модемы, необходимо убедиться в том, что соответствующие USB-модули включены в ядро (вопросы конфигурирования ядра обсуждаются в гл. 20). Некоторые USB-модули уже включены в состав последних дистрибутивов, включая Red Hat Linux 7.1.

Для USB модемов также необходим модуль Communication Device Class Abstract Control Module, кратко acm; о. Если он не входит в ядро, следует включить его в текущую конфигурацию. В Red Hat Linux 7.1 необходимо компилировать этот модуль в состав ядра. Более подробно вопросы модификации ядра рассмотрены в гл. 20. Покончив с формированием необходимого ядра, можно запускать следующую команду:

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

Соответствующие устройства уже должны существовать в каталоге /dev/usb. Проверьте это с помощью команды Is – I /dev/usb/ ttyACM*. Результат должен выглядеть приблизительно так:

Если у вас результат отличается от приведенного, выполните следующую команду:

Повторите эту команду, подставив ttyACM1, ttyACM2 и другие USB-порты по мере необходимости.

Источник

14. Введение в порты Linux

Введение в порты Linux

В среде Linux каждому периферийному физическому устройству или порту подключения сопоставляется один или несколько файлов в специальном каталоге / dev. Это относится к жестким дискам, устройствам CD-ROM, параллельным и последовательным портам.

Основной принцип достаточно прост. Рассмотрим для примера жесткий диск.

В Linux каждому жесткому диску IDE присваивается имя hdx, где х принимает значения «а» (для первого диска на первичной шине IDE), «b» (для второго диска на первичной шине ШЕ), «с» (для первого диска на вторичной шине IDE) и т.д. Таким образом, имя главного вторичного диска — /dev/hdc.

Жесткие SCSI-диски и SCSI-диски CD-ROM аналогичным образом обозначаются sdx.

В каталоге / dev имеется составляющая для каждого дискового раздела. Например, второму разделу первичного подчиненного диска присваивается имя /dev/hdb2, первому разделу вторичного главного- /dev/hdcl.

Параллельные порты в Linux

Рассмотрим параллельные порты. В DOS и Windows параллельным портам присваиваются имена LPT1:, LPT2 :, LPT3 : и т.д. Как правило, в ПК один параллельный порт с именем LPT1:.

В Linux параллельным портам сопоставляются файлы устройств 1рх, где х — номер порта. Это основное отличие от DOS и Windows: нумерация портов начинается не с единицы, а с нуля, так что LPT1: в Linux соответствует /dev/lp0, a LPT2 : — /dev/ lpl. В DOS возможна ситуация, когда единственный параллельный порт компьютера имеет имя, отличное от LPT1:; в Linux этому порту будет присвоено имя /dev/lpO, как первому доступному порту.

Теперь перейдем к последовательным портам, понимание принципов рабств которых важно для правильной установки модема.

Последовательные порты в Linux

В Linux каждому последовательному порту сопоставляется два файла устройств — для исходящих и входящих соединений. Файлы исходящих соединений называются ttySx, где х- номер, начинающийся с нуля. Таким образом, порту СОМ1: из DOS в Linux соответствует /dev/ttyS0, COМ2 : — /dev/ ttySl. В ранних версиях Linux последовательному порту сопоставлялся еще один файл устройства. Это файл сиах, где х — номер, начинающийся с нуля. Таким образом, в этих версиях СОМ1: соответствовали файлы /dev/ ttyS0 и /dev/cua0, COM4: — /dev/ttyS3 и dev/сuаЗ. Адреса портов сведены в таблицу 18.2.

Табл. 18.2. Последовательные порты в DOS и Linux

Источник

Как проверить прослушивающие порты в Linux (используемые порты)

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

В этой статье объясняется, как использовать команды netstat , ss и lsof чтобы узнать, какие службы прослушивают какие порты. Инструкции применимы для всех операционных систем Linux и Unix, таких как macOS.

Что такое порт прослушивания

Сетевой порт идентифицируется по его номеру, связанному IP-адресу и типу протокола связи, например TCP или UDP.

Порт прослушивания — это сетевой порт, на котором приложение или процесс прослушивает, выступая в качестве конечной точки связи.

Каждый порт прослушивания может быть открыт или закрыт (отфильтрован) с помощью брандмауэра. В общих чертах, открытый порт — это сетевой порт, который принимает входящие пакеты из удаленных мест.

У вас не может быть двух служб, слушающих один и тот же порт на одном IP-адресе.

Например, если вы используете веб-сервер Apache, который прослушивает порты 80 и 443 и вы пытаетесь установить Nginx , последний не запустится, потому что порты HTTP и HTTPS уже используются.

Проверьте порты прослушивания с помощью netstat

netstat — это инструмент командной строки, который может предоставить информацию о сетевых подключениях.

Чтобы вывести список всех прослушиваемых портов TCP или UDP, включая службы, использующие порты, и статус сокета, используйте следующую команду:

Параметры, используемые в этой команде, имеют следующее значение:

  • -t — Показать TCP-порты.
  • -u — Показать порты UDP.
  • -n — Показывать числовые адреса вместо разрешающих узлов.
  • -l — Показать только прослушивающие порты.
  • -p — Показать PID и имя процесса слушателя. Эта информация отображается только в том случае, если вы запускаете команду от имени пользователя root или sudo .

Результат будет выглядеть примерно так:

Важными столбцами в нашем случае являются:

  • Proto — протокол, используемый сокетом.
  • Local Address — IP-адрес и номер порта, который прослушивает процесс.
  • PID/Program name — PID и имя процесса.

Если вы хотите отфильтровать результаты, используйте команду grep . Например, чтобы узнать, какой процесс прослушивает TCP-порт 22, введите:

Выходные данные показывают, что на этой машине порт 22 используется сервером SSH:

Если вывод пуст, это означает, что порт ничего не прослушивает.

Вы также можете фильтровать список по критериям, например, PID, протоколу, состоянию и так далее.

netstat устарел и заменен ss и ip , но все же это одна из наиболее часто используемых команд для проверки сетевых подключений.

Проверьте порты прослушивания с помощью ss

ss — это новый netstat . В нем отсутствуют некоторые функции netstat , но он предоставляет больше состояний TCP и работает немного быстрее. Параметры команды в основном те же, поэтому переход с netstat на ss не представляет труда.

Чтобы получить список всех прослушивающих портов с помощью ss , введите:

Результат почти такой же, как у netstat :

Проверьте порты прослушивания с помощью lsof

lsof — это мощная утилита командной строки, которая предоставляет информацию о файлах, открытых процессами.

В Linux все является файлом. Вы можете думать о сокете как о файле, который записывает в сеть.

Чтобы получить список всех прослушивающих TCP-портов с типом lsof :

Используются следующие параметры:

  • -n — Не преобразовывать номера портов в имена портов.
  • -p — Не разрешать имена хостов, показывать числовые адреса.
  • -iTCP -sTCP:LISTEN — Показать только сетевые файлы с состоянием TCP LISTEN.

Большинство имен выходных столбцов говорят сами за себя:

  • COMMAND , PID , USER — имя, pid и пользователь, запускающий программу, связанную с портом.
  • NAME — номер порта.

Чтобы узнать, какой процесс прослушивает определенный порт, например порт 3306 вы должны использовать:

Выходные данные показывают, что сервер MySQL использует порт 3306 :

Для получения дополнительной информации посетите страницу руководства lsof и прочтите обо всех других мощных возможностях этого инструмента.

Выводы

Мы показали вам несколько команд, которые вы можете использовать, чтобы проверить, какие порты используются в вашей системе, и как узнать, какой процесс прослушивает определенный порт.

Если у вас есть вопросы или замечания, пожалуйста, оставьте комментарий ниже.

Источник

Читайте также:  Ошибка пакета установщика windows 1603
Оцените статью