Команда Netstat в Linux

Обновлено: 21.11.2024

Использование Netstat для проверки прослушиваемых портов в Linux

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

ПРИМЕЧАНИЕ: Netstat недавно устарел в пользу ss и ip route, которые теперь являются частью пакета net-tools. Более подробную информацию о маршрутах ss и ip см. в этой статье базы знаний!

Просматривая справочные страницы для netstat в нашей установке CentOS 6, мы обнаружили, что у netstat есть следующие параметры:

Параметры

--подробно, -v

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

--число, -n

--числовые хосты

--числовые-порты

--числовые-пользователи

--protocol=семейство , -A

Указывает семейства адресов (возможно, лучше описанные как протоколы низкого уровня), для которых должны отображаться соединения. family – это разделенный запятыми (',') список ключевых слов семейства адресов, таких как inet , unix , ipx , ax25 , netrom и ddp . Это имеет тот же эффект, что и использование параметров --inet, --unix (-x), --ipx, --ax25, --netrom и --ddp.

Семейство адресов inet включает сокеты протоколов raw, udp и tcp.

-c, --continuous

-e, --extend

-о, --таймеры

-p, --программа

-l, --listing

-а, --все

Показать как прослушивающие, так и не прослушивающие (для TCP это означает установленные соединения) сокеты. С параметром --interfaces показывать непомеченные интерфейсы

-Z --контекст

-T --notrim

задержка

В этой конкретной базе знаний мы обсудим, как выяснить, работает ли стандартный веб-сервер Apache на портах 80 и 443. Наш стандартный веб-сервер Apache был установлен в CentOS 6 с помощью yum, а хост SSL был также настроен на виртуальном хосте по умолчанию.

Давайте сначала убедимся, что apache действительно запущен.

root@web01:~$ состояние службы apache2
* apache2 запущен

Вывод команды в CentOS 6:

Как видно из выделенного выше текста, мы обнаружили, что http и https действительно прослушивают сокеты TCP на нашем сервере Linux. Мы могли бы искать только строку «http», используя grep. Grep будет рассмотрен в другой статье базы знаний, но вот пример:

Netstat – это инструмент командной строки, используемый системными администраторами для оценки конфигурации и активности сети. Термин Netstat является результатом сети и статистики. Он показывает открытые порты на хост-устройстве и соответствующие им адреса, таблицу маршрутизации и маскирующие соединения.

Цель этого сообщения — показать вам, как установить и настроить различные команды Netstat в Linux.

Установка Net-tools в Linux:

Netstat является частью пакета net-tools. Вы можете получить пакет net-tools в Ubuntu с помощью команды:

Проверить версию Netstat:

После установки проверьте установленную версию Netstat:

Команда Netstat в Linux:

Отображение таблицы маршрутизации:

Команда Netstat показывает данные таблицы маршрутизации на терминале. Если вы хотите увидеть таблицу маршрутизации, используйте флаг –nr с Netstat; он показывает таблицу маршрутизации ядра так же, как маршрут. Используйте следующую команду:

Вместо использования символических имен адресов параметр -nr позволяет Netstat печатать адреса, разделенные точками

Показать статистику интерфейса:

Использование флага или параметра ‘-i’ с Netstat отобразит статистику для настроенных в данный момент сетевых интерфейсов.

Если вместе с -i используется флаг "-a", команда выводит все интерфейсы ядра.

Подключение к контекстно-медийной сети:

Чтобы просмотреть активные или пассивные сокеты, Netstat предлагает ряд параметров. Активные подключения к сокетам TCP, UDP, RAW и Unix задаются параметрами –t, –u, –w и –x соответственно.

Введите на своем терминале:

Сетевые сервисы контекстно-медийной сети:

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

Отобразить все прослушиваемые порты соединений TCP и UDP:

Вы можете просмотреть все порты TCP и UDP с помощью команды:

Отобразить подключение к порту TCP:

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

Отобразить подключение порта UDP:

Чтобы увидеть подключение к порту UDP (User Diagrams Protocols), используйте команду:

Показать все прослушиваемые соединения:

Выведите список всех активных подключений, используя флаг "-l" в Netstat:

Показать все порты прослушивания TCP:

Мы можем получить список всех активных прослушивающих TCP-портов, используя флаг –lt следующим образом:

Показать все порты прослушивания UDP:

Мы можем получить список всех активных прослушивающих UDP-портов, используя параметр «–lu»:

Показать все прослушиваемые порты Unix:

Отобразить список всех активных прослушивающих портов UNIX с помощью –lx:

Отображение статистики по протоколу:

Отображает статистику по конкретному протоколу. Статистика протоколов TCP, UDP, ICMP и IP отображается по умолчанию. Набор протоколов можно определить с помощью параметра -s:

Отображение статистики по протоколу TCP:

Отобразить список только TCP-протоколов с помощью параметра «–st» в Netstat:

Отображение статистики по протоколу UDP

Отобразить список только протоколов UDP с помощью параметра «–su» в Netstat:

Вывод:

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

Об авторе

Акса Макбул

Как инженер-программист, я с удовольствием пишу о различных
статьях, связанных с ИТ, но глубоко интересуюсь Linux. Я провожу большую часть своего времени за чтением блогов, связанных с Linux, и книг, связанных с ИТ. Я хочу служить миру своими писательскими способностями.

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

Опубликовано: 18 мая 2020 г. | Тайлер Кэрриган (Red Hat)

Фото Тимура Сагламбилека из Pexels

Дополнительные ресурсы по Linux

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

Список всех прослушиваемых портов

Чтобы вывести список всех прослушиваемых портов, используя как TCP, так и UDP, используйте netstat -a :

Примечание: длина этого вывода была изменена.

Если вам кажется, что это много информации, то это потому, что это на самом деле много информации!

Отображать только подключения TCP-порта

Если вы считаете, что параметр -a слишком многословен, попробуйте использовать с ним флаг -t:

Это дает вам гораздо более удобное считывание только TCP-соединений.

Отображать только соединения портов UDP

Список всех активно прослушиваемых портов

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

Примечание: длина этого вывода была изменена.

Вы также можете применить фильтры к портам прослушивания, добавив параметры -t и -u в зависимости от желаемого протокола.

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

Получить статистику по протоколам

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

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

Необработанная статистика сети:

Если все эти отфильтрованные данные не для вас, рассмотрите возможность получения необработанной статистики:

Отображать сервисы по PID

Действительно удобный прием для устранения неполадок — перечисление служб по PID. Для этого используйте следующую команду:

Показать ввод-вывод по интерфейсу

Опция -i — еще один полезный флаг для устранения неполадок. Чтобы просмотреть статистику отправки/получения по интерфейсу, используйте следующее:

Вот оно. Команда netstat — это простой в использовании и мощный инструмент, который может использовать любой сетевой администратор Linux. Я широко использовал netstat в качестве администратора хранилища для устранения неполадок, и я уверен, что вы тоже найдете для него применение. Хотя в последние годы netstat устарел в пользу команды ss, вы все еще можете найти ее в своем наборе сетевых инструментов. Для более современного взгляда я рассмотрю ss в следующей статье, так что следите за этим!

[ Начинаете работать с сетью? Ознакомьтесь со шпаргалкой по работе с сетью в Linux. ]

Команда netstat — это инструмент командной строки для сетевой статистики. Он дает обзор сетевой активности и показывает, какие порты открыты или с установленными соединениями. Инструмент netstat необходим для обнаружения сетевых проблем.

В этой статье показано 28 команд netstat для отображения данных статистики портов и Интернета в Linux.

  • Доступ к терминалу
  • Установлен программный пакет net-tools

Примечание. Хотя команда netstat все еще широко используется, она считается устаревшей. Вместо этого рекомендуется использовать команду ss как более быстрый и простой инструмент. Узнайте больше о команде ss в Linux.

Как использовать команду netstat в Linux

В основном netstat используется без каких-либо параметров:

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

  • Proto — протокол соединения (TCP, UDP).
  • Recv-Q — получение очереди байтов, полученных или готовых к получению.
  • Send-Q — отправить очередь байтов, готовых к отправке.
  • Локальный адрес сведения об адресе и порте локального подключения. Звездочка (*) в узле указывает, что сервер прослушивает и порт еще не установлен.
  • Внешний адрес: сведения об адресе и порте удаленного конца соединения. Если порт еще не установлен, отображается звездочка (*).
  • State состояние локального сокета, чаще всего ESTABLISHED,LISTENING, CLOSED или пустое.< /li>

Во втором списке показаны все активные открытые сокеты "Unix Domain" со следующей информацией:

  • Proto – протокол, используемый сокетом (всегда unix).
  • RefCnt – количество ссылок на процессы, подключенные к этому сокету.
  • Флаги — обычно ACC или пустые.
  • Тип — тип сокета.
  • Состояние — состояние сокета, чаще всего ПОДКЛЮЧЕНО, ПРОСЛУШИВАЕТ или пусто.
  • I-Node — индексный дескриптор файловой системы (индексный узел), связанный с этим сокетом.
  • Путь — системный путь к сокету.

Для расширенного использования расширьте команду netstat параметрами:

Или перечислите параметры один за другим:

Параметры netstat позволяют фильтровать сетевую информацию.

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

Список всех портов и подключений

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

В выходных данных перечислены установленные соединения, а также открытые или прослушиваемые серверы.

Список всех портов TCP

Выведите список всех TCP-портов, выполнив:

Список всех портов UDP

Список всех портов UDP с помощью:

Список только прослушиваемых портов

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

Список портов прослушивания TCP

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

Список портов прослушивания UDP

Вернуть только прослушиваемые порты UDP, выполнив:

Список прослушиваемых портов UNIX

Чтобы получить список прослушиваемых портов UNIX, используйте:

Примечание. В качестве альтернативы сканируйте открытые порты с помощью nmap.

Отображение статистики по протоколам

Отображать статистику для всех портов независимо от протокола с помощью:

Статистика также может быть отфильтрована по протоколу.

Список статистики для TCP-портов

Отображать статистику только для TCP-портов с помощью:

Список статистики для портов UDP

Чтобы вывести статистику только для портов UDP, используйте:

Список транзакций сетевого интерфейса

Чтобы увидеть транзакции MTU, получение и передачу пакетов в таблице интерфейса ядра, используйте:

Отобразить расширенную таблицу интерфейса ядра

Добавьте параметр -e к netstat -i, чтобы расширить детали таблицы интерфейса ядра:

Отображение замаскированных подключений

Для отображения замаскированных подключений используйте:

Показать PID

Отобразите имя PID/программы, относящееся к определенному соединению, добавив параметр -p к netstat . Например, чтобы просмотреть соединения TCP с указанным PID/именем программы, используйте:

Найти программы для прослушивания

Найти все программы для прослушивания с помощью:

Отображение таблицы IP-маршрутизации ядра

Отобразить таблицу IP-маршрутизации ядра с помощью:

Отображать членство в группах IPv4 и IPv6

Отображать членство в группе для IPv6/IPv4 с помощью:

Непрерывно печатать информацию о netstat

Добавьте параметр -c в команду netstat для вывода информации каждую секунду:

Например, чтобы непрерывно печатать таблицу интерфейса ядра, выполните:

Поиск ненастроенных семейств адресов

Список адресов без поддержки в системе с помощью:

Информация находится в конце вывода:

Отображение числовых адресов, адресов хостов, номеров портов и идентификаторов пользователей

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

Отображать числовые адреса
Показывать числовые адреса с помощью:

Отображать числовые адреса хостов
Чтобы отобразить только числовые адреса хостов, выполните:

Отображать числовые номера портов
Показывать только порты в числовом виде с помощью:

Отображать числовые идентификаторы пользователей
Чтобы отобразить числовые идентификаторы пользователей, используйте:

Найти процесс, использующий определенный порт

Используйте команду grep для фильтрации данных из netstat . Чтобы найти процесс, использующий определенный номер порта, выполните:

Список всех команд netstat

Доступно множество параметров netstat. Получите доступ к списку всех доступных команд и краткому описанию, используя:

Примечание. Ознакомьтесь с памяткой по командам Linux, в которой есть команда netstat.

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

Для дальнейшего чтения узнайте о лучших инструментах сетевой безопасности.

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

В этой статье показано множество способов проверки скорости сети в Linux с помощью интерфейса командной строки. Узнайте, как установить и использовать.

Настройте сетевые параметры CentOS с помощью командной строки или интерфейса Network Manager TUI. В этом руководстве показано, как это сделать.

Nmap расшифровывается как Network Mapper. Это инструмент с открытым исходным кодом для исследования сети и аудита безопасности.

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