HUGE EGGS Surprise Toys Challenge with Inflatable water slide
Оглавление:
- Что такое порт прослушивания
- Проверьте порты прослушивания с помощью
netstat
- Проверьте порты прослушивания с помощью
ss
- Проверьте порты прослушивания с помощью
lsof
- Вывод
При устранении неполадок сетевого подключения или проблем, связанных с конкретным приложением, в первую очередь следует проверить, какие порты фактически используются в вашей системе, а какое приложение прослушивает определенный порт.
В этой статье объясняется, как узнать, какие службы прослушивают какие порты, используя команды
netstat
,
ss
и
lsof
. Инструкции применимы для всех операционных систем на основе Linux и Unix, таких как macOS.
Что такое порт прослушивания
Сетевой порт идентифицируется его номером, соответствующим IP-адресом и типом протокола связи, таким как TCP или UDP.
Порт прослушивания - это сетевой порт, который прослушивает приложение или процесс, выступая в качестве конечной точки связи.
Каждый порт прослушивания может быть открыт или закрыт (отфильтрован) с помощью брандмауэра. В общих чертах, открытый порт - это сетевой порт, который принимает входящие пакеты из удаленных мест.
Вы не можете иметь две службы, прослушивающие один и тот же порт на одном и том же IP-адресе.
Например, если вы используете веб-сервер Apache, который прослушивает порты
80
и
443
и вы пытаетесь установить Nginx, более поздний запуск не удастся, поскольку порты HTTP и HTTPS уже используются.
Проверьте порты прослушивания с помощью
netstat
netstat
- это инструмент командной строки, который может предоставить информацию о сетевых подключениях.
Чтобы получить список всех прослушиваемых портов TCP или UDP, включая службы, использующие порты и состояние сокета, используйте следующую команду:
sudo netstat -tunlp
Параметры, используемые в этой команде, имеют следующее значение:
-
-t
- Показать порты TCP.-u
- Показать UDP порты.-n
- Показывать числовые адреса вместо разрешения хостов.-l
- Показывать только порты прослушивания.-p
- показать PID и имя процесса слушателя. Эта информация отображается, только если вы запускаете команду от имени пользователя root или sudo.
Вывод будет выглядеть примерно так:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 445/sshd tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 929/master tcp6 0 0:::3306:::* LISTEN 534/mysqld tcp6 0 0:::80:::* LISTEN 515/apache2 tcp6 0 0:::22:::* LISTEN 445/sshd tcp6 0 0:::25:::* LISTEN 929/master tcp6 0 0:::33060:::* LISTEN 534/mysqld udp 0 0 0.0.0.0:68 0.0.0.0:* 966/dhclient
Важными столбцами в нашем случае являются:
-
Proto
- протокол, используемый сокетом.Local Address
- IP-адрес и номер порта, который прослушивает процесс.PID/Program name
- PID и название процесса.
sudo netstat -tnlp | grep:22
Выходные данные показывают, что на этой машине порт 22 используется сервером SSH:
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 445/sshd tcp6 0 0:::22:::* LISTEN 445/sshd
Если вывод пуст, это означает, что на порте ничего не прослушивается.
Вы также можете отфильтровать список на основе критериев, например, PID, протокола, состояния и т. Д.
netstat
устарел и заменен на
ss
и
ip
, но все же он является одной из наиболее часто используемых команд для проверки сетевых подключений.
Проверьте порты прослушивания с помощью
ss
ss
это новый
netstat
. В нем отсутствуют некоторые функции
netstat
но он предоставляет больше состояний TCP и работает немного быстрее. Параметры команды в основном одинаковы, поэтому переход с
netstat
на
ss
не сложен.
Чтобы получить список всех прослушивающих портов с помощью
ss
вы должны набрать:
sudo ss -tunlp
Вывод почти такой же, как тот, о котором сообщает
netstat
:
State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd", pid=445, fd=3)) LISTEN 0 100 0.0.0.0:25 0.0.0.0:* users:(("master", pid=929, fd=13)) LISTEN 0 128 *:3306 *:* users:(("mysqld", pid=534, fd=30)) LISTEN 0 128 *:80 *:* users:(("apache2", pid=765, fd=4), ("apache2", pid=764, fd=4), ("apache2", pid=515, fd=4)) LISTEN 0 128:22:* users:(("sshd", pid=445, fd=4)) LISTEN 0 100:25:* users:(("master", pid=929, fd=14)) LISTEN 0 70 *:33060 *:* users:(("mysqld", pid=534, fd=33))
Проверьте порты прослушивания с помощью
lsof
lsof
- мощная утилита командной строки, которая предоставляет информацию о файлах, открытых процессами.
В Linux все является файлом. Вы можете думать о сокете как о файле, который пишет в сеть.
Чтобы получить список всех прослушивающих TCP-портов с типом
lsof
:
sudo lsof -nP -iTCP -sTCP:LISTEN
Используются следующие параметры:
-
-n
- не преобразовывать номера портов в имена портов.-p
- не разрешать имена хостов, показывать числовые адреса.-iTCP -sTCP:LISTEN
- Показывать только сетевые файлы с состоянием TCP LISTEN.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 445 root 3u IPv4 16434 0t0 TCP *:22 (LISTEN) sshd 445 root 4u IPv6 16445 0t0 TCP *:22 (LISTEN) apache2 515 root 4u IPv6 16590 0t0 TCP *:80 (LISTEN) mysqld 534 mysql 30u IPv6 17636 0t0 TCP *:3306 (LISTEN) mysqld 534 mysql 33u IPv6 19973 0t0 TCP *:33060 (LISTEN) apache2 764 www-data 4u IPv6 16590 0t0 TCP *:80 (LISTEN) apache2 765 www-data 4u IPv6 16590 0t0 TCP *:80 (LISTEN) master 929 root 13u IPv4 19637 0t0 TCP *:25 (LISTEN) master 929 root 14u IPv6 19638 0t0 TCP *:25 (LISTEN)
Большинство имен выходных столбцов говорят сами за себя:
-
COMMAND
,PID
,USER
- имя, идентификатор и пользователь, запустивший программу, связанную с портом.NAME
- номер порта.
Чтобы узнать, какой процесс прослушивает определенный порт, например, порт
3306
вы должны использовать:
sudo lsof -nP -iTCP:3306 -sTCP:LISTEN
Выходные данные показывают, что порт
3306
используется сервером MySQL:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld 534 mysql 30u IPv6 17636 0t0 TCP *:3306 (LISTEN)
Для получения дополнительной информации посетите страницу руководства lsof и прочитайте обо всех других мощных опциях этого инструмента.
Вывод
Мы показали вам несколько команд, которые вы можете использовать для проверки того, какие порты используются в вашей системе, и как найти процесс, который прослушивает определенный порт.
ТерминалПредставители отдела продаж, используемые как большинство рецессионных доказательств
Кажется контр-интуитивным, но в соответствии с рейтингом на сайте, соответствующем заданию, опытные специалисты по продажам были наиболее востребованы в течение последних восьми месяцев.
Как сопоставить часто используемые папки как диски в Windows
Узнайте, как сопоставить часто используемые папки в качестве дисков в Windows для быстрого доступа к ним при необходимости.
Как проверить (проверить) открытые порты в Linux
В этой статье описывается несколько подходов, чтобы узнать, какие порты открыты снаружи в вашей системе Linux.