Разделы сайта
Выбор редакции:
- Вывод части изображения html спрайт
- Настройка дополнительных реквизитов и дополнительных сведений номенклатуры 1с дополнительные реквизиты и сведения отличия
- Что делать, когда нет регистрационных данных
- Запрос на выборку данных (формулы) в MS EXCEL Эксель выборка по условию макрос
- Временная временная одноразовая электронная почта Temp Email, mail sites, регистрация в социальных сетях
- Что делать, если компьютер не видит телефон через USB-порт
- Как установить Windows на Mac?
- Asus rt n16 настройка прошивка
- Как узнать разрядность операционной системы и процессора в Windows
- Как выключить брандмауэр Windows: полная деактивация и отключение для отдельных программ Как полностью отключить брандмауэр windows 7
Реклама
Как посмотреть открытые порты в Linux. Как проверить, открыт ли брандмауэр для порта, но не прослушивается порт Самая популярная программа прослушивания портов |
Если порт открыт это означает, что какая либо программа (например сервис) использует его для связи с другой программой через интернет или в локальной системе. Чтобы посмотреть какие порты открыты в вашей системе Linux можно использовать команду netstat. В выводе будут показаны все сервисы и прослушиваемые ими порты и ip адреса. sudo netstat -ntulp Active Internet connections (only servers)
Способ 2 lsofУтилита lsof позволяет посмотреть все открытые в системе соединения, в том числе и сетевые, для этого нужно использовать опцию i. dhcpcd 2136 root 6u IPv4 4986 0t0 UDP *:bootpc Еще один пример, смотрим какие процессы работают с портом 80: sudo lsof -i | grep 80 ntpd 2213 root 23u IPv6 5422 0t0 UDP :ntp Способ 3. nmapNmap - мощный сетевой сканер, разработанный для сканирования и пентестинга удаленных узлов, но ничего не мешает направить его на локальный компьютер: Starting Nmap 6.47 (http://nmap.org) at 2015-08-02 17:27 EEST Nmap done: 1 IP address (1 host up) scanned in 0.10 seconds Если вы хотите посмотреть какие порты на компьютере доступны снаружи, здесь тоже пригодится Nmap. Если компьютер - общедоступный сервер, то результат скорее всего не будет отличатся от локального сканирования, но на домашнем компьютере все немного по другому. Первый вариант - используется роутер и в сеть будут видны только порты роутера, еще одним порогом защиты может стать NAT сервер провайдера. Технология NAT позволяет нескольким пользователям использовать один внешний IP адрес. И так для просмотра открытых внешних портов сначала узнаем внешний ip адрес, для надежности воспользуемся онлайн сервисом: nmap 178.93.149.50 В результате мы можем получить открытый порт 80 веб сервера, или даже 21 - файлового сервера, которых мы не устанавливали, эти порты открыты роутером, 80 - для веб-интерфейса, а 21 для может использоваться для обновления прошивки. А еще можно вообще не получить результатов, это будет означать что все порты закрыты, или на сервере установлена система защиты от вторжений IDS. Команда netstat , входящая в стандартный набор сетевых инструментов UNIX, отображает различную network–related информацию, такую как сетевые подключения, статистику интерфейсов, таблицы маршрутизации, masquerade, multicast, и т.п. В этой статье рассмотрим десять практических примеров использования команды netstat в Linux . 1. Список всех портов (как прослушиваемых, так и нет)Перечислить все порты: netstat -a # netstat -a | more Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:domain *:* LISTEN udp6 0 0 fe80::20c:29ff:fe68:ntp [::]:* Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 20492 /var/run/mysqld/mysqld.sock unix 2 [ ACC ] STREAM LISTENING 23323 /var/run/php5-fpm.sock Перечислить все TCP порты: netstat -at # netstat -at Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:domain *:* LISTEN tcp 0 0 *:ssh *:* LISTEN tcp 0 0 localhost:ipp *:* LISTEN tcp 0 0 *:http *:* LISTEN Перечислить все UDP порты: netstat -au # netstat -au Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 0 localhost:domain *:* udp 0 0 *:bootpc *:* udp6 0 0 fe80::20c:29ff:fe68:ntp [::]:* 2. Список сокетов, находящихся в состоянии LISTENПеречислить все прослушиваемые порты: netstat -l # netstat -l Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:domain *:* LISTEN tcp6 0 0 [::]:ssh [::]:* LISTEN udp 0 0 192.168.128.134:ntp *:* Перечислить прослушиваемые TCP порты: netstat -lt # netstat -lt Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:domain *:* LISTEN tcp 0 0 localhost:ipp *:* LISTEN tcp6 0 0 [::]:ssh [::]:* LISTEN Перечислить прослушиваемые UDP порты: netstat -lu # netstat -lu Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 0 *:bootpc *:* udp6 0 0 [::]:ntp [::]:* Перечислить прослушиваемые UNIX сокеты: netstat -lx # netstat -lx Active UNIX domain sockets (only servers) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 3141 /var/run/fail2ban/fail2ban.sock unix 2 [ ACC ] STREAM LISTENING 20492 /var/run/mysqld/mysqld.sock unix 2 [ ACC ] STREAM LISTENING 23323 /var/run/php5-fpm.sock 3. Просмотр статистики для каждого протоколаПоказать статистику всех портов: netstat -s # netstat -s Ip: 11150 total packets received 1 with invalid addresses 0 forwarded 0 incoming packets discarded 11149 incoming packets delivered 11635 requests sent out Icmp: 13791 ICMP messages received 12 input ICMP message failed. Tcp: 15020 active connections openings 97955 passive connection openings 135 failed connection attempts Udp: 2841 packets received 180 packets to unknown port received. ..... Показать статистику только TCP портов: netstat -st # netstat -st Показать статистику только UDP портов: netstat -su # netstat -su 4. Отображение PID и имени процесса в выводе netstatОпция netstat -p добавит «PID/Program Name» в вывод netstat, и может быть совмещена с любым другим набором опций. Это очень полезно при отладке, для определения того, какая программа работает на определённом порту. # netstat -pt Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 org-ru-putty.vm.udf:www 52-106.plus.kerch:55723 ESTABLISHED 9486/nginx: worker tcp 0 0 org-ru-putty.vm.udf:www 52-106.plus.kerch:55757 ESTABLISHED 9486/nginx: worker 5. Разрешение имён в выводе netstatКогда вам не нужно резолвить имя хоста, имя порта, имя пользователя, используйте опцию netstat -n для вывода значений в цифровом формате. Команда покажет IP-адрес вместо хоста, номер порта вместо имени порта, UID вместо имени пользователя. Это также ускорит вывод, так как netstat не станет выполнять ненужный поиск. # netstat -an Для вывода цифровых значений только некоторых из этих пунктов, используйте следующие команды: # netsat -a --numeric-ports # netsat -a --numeric-hosts # netsat -a --numeric-users 6. Вывод информации netstat непрерывноОпция netstat -c будет выводить информацию непрерывно, в стиле top , обновляя экран каждые несколько секунд. # netstat -c Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 org-ru-putty.vm.udf:www 182.131.74.202:59933 FIN_WAIT2 tcp 0 0 org-ru-putty.vm.udf:www 182.131.74.202:63761 FIN_WAIT2 tcp 0 0 org-ru-putty.vm.udf:www 92-181-66-102-irk.:4585 ESTABLISHED ^C 7. Неподдерживаемые системой семейства адресовОпция netstat --verbose покажет подробный вывод, а в самом конце отобразит неподдерживаемые Address Family. Netstat: no support for `AF IPX" on this system. netstat: no support for `AF AX25" on this system. netstat: no support for `AF X25" on this system. netstat: no support for `AF NETROM" on this system. 8. Маршрутизация ядраПоказать таблицу маршрутизации ядра: netstat -r # netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface default 192.168.128.2 0.0.0.0 UG 0 0 0 eth0 192.168.128.0 * 255.255.255.0 U 0 0 0 eth0 Примечание: Используйте netstat -rn для просмотра маршрута в цифровом формате без разрешения имён узлов. 9. Соответствие портов и процессовУзнать, какой порт занимает определённая программа: # netstat -ap | grep ssh (Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) tcp 0 0 *:ssh *:* LISTEN - tcp6 0 0 [::]:ssh [::]:* LISTEN - Выяснить, каким процессом используется определённый порт: # netstat -an | grep ":80" 10. Сетевые интерфейсыПоказать список сетевых интерфейсов: netstat -i # netstat -i Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 1911037 0 0 0 1382056 0 0 0 BMRU lo 16436 0 0 0 0 0 0 0 0 0 LRU Показать расширенную информацию об интерфейсах (аналогично ifconfig): netstat -ie # netstat -ie Kernel Interface table eth0 Link encap:Ethernet HWaddr 00:0c:29:68:4c:a4 inet addr:192.168.128.134 Bcast:192.168.128.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe68:4ca4/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:24278 errors:0 dropped:0 overruns:0 frame:0 TX packets:11275 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:33203025 (33.2 MB) TX bytes:665822 (665.8 KB) Interrupt:19 Base address:0x2000 11. netstat -lnptuxРезюмируем вышеописанное и объединим ключи в одну полезную команду, которая покажет:
Примечание: Не все процессы могут быть идентифицированы последним ключом, чужие процессы показаны не будут. Вы должны иметь права root чтобы увидеть всё. # netstat -lnptux Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 9614/nginx tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 601/sshd udp 0 0 8.8.4.4:123 0.0.0.0:* 574/ntpd udp 0 0 127.0.0.1:123 0.0.0.0:* 574/ntpd udp 0 0 0.0.0.0:123 0.0.0.0:* 574/ntpd Active UNIX domain sockets (only servers) Proto RefCnt Flags Type State I-Node PID/Program name Path unix 2 [ ACC ] STREAM LISTENING 4233 826/python /var/run/fail2ban/fail2ban.sock unix 2 [ ACC ] STREAM LISTENING 8122 2561/mysqld /var/run/mysqld/mysqld.sock unix 2 [ ACC ] STREAM LISTENING 160413 7301/php-fpm.conf /var/run/php5-fpm.sock Январь 2013, сайт Please enable JavaScript© 2009–2019, сайт - При использовании материалов сайта указывайте источник. Существует много различных приложений, показывающих, какое приложение "слушает" тот или иной порт в настоящее время. Вы можете воспользоваться приложениями SysInternals Process Explorer, Sysinternals TCPView, Nirsoft CurrPorts, все они весьма замечательны, но в нужный момент их может просто не оказаться под рукой. Их отсутствие можно восполнить встроенными средствами операционной системы. В состав Windows входит консольная утилита netstat . Запустив её с параметром /? , вы увидите, что предназначена она для отображения статистики и активных соединений протокола TCP/IP, а также полный перечень её опций: Из этого перечня нас интересуют в первую очередь эти:
Также хочу обратить ваше внимание на опцию –n , которая указывает утилите netstat отображать реальные айпи адреса и цифровые значения портов вместо из DNS-имен и общепринятых псевдонимов. В ряде случаев это может оказаться полезным. Порядок действий![]() Если вам претит tasklist
, вы можете воспользоваться системным "Диспетчером задач
". Запустите его, нажав CTRL+SHIFT+ESC, перейдите на вкладку "Процессы". В меню "Вид" выберите пункт "Выбрать столбцы", и отметьте столбец PID: Нужный процесс можно найти по значению этого столбца: Я лично предпочитаю tasklist по той причине, что в диспетчере задач нет поиска. Откройте окно командной строки (в качестве администратора). В поле "Начало\Поиск" введите "cmd", затем щелкните правой кнопкой мыши "cmd.exe" и выберите "Запуск от имени администратора" Введите следующий текст и нажмите Enter. netstat -abno-a Отображает все подключения и прослушивающие порты. -b Отображает исполняемый файл, участвующий в создании каждого соединения или порт прослушивания. В некоторых случаях известный хост исполняемых файлов несколько независимых компонентов, и в этих случаях последовательность компонентов, участвующих в создании соединения или порт прослушивания. В этом случае исполняемый файл имя находится в внизу, сверху - компонент, который он назвал, и т.д. до тех пор, пока не будет достигнут TCP/IP. Обратите внимание, что этот параметр может занять много времени и не удастся, если у вас недостаточно разрешения. -n Отображает адреса и номера портов в числовой форме. -o Отображает идентификатор процесса владения, связанный с каждым соединением. Найдите порт, который вы слушаете в разделе "Локальный адрес" Посмотрите на имя процесса непосредственно под этим. ПРИМЕЧАНИЕ. Чтобы найти процесс в диспетчере задач
Обратите внимание на идентификатор процесса (идентификатор процесса) рядом с порт, который вы ищете. Откройте диспетчер задач Windows. Перейдите на вкладку Процессы. Посмотрите на PID, который вы отметили, когда вы сделали netstat на шаге 1. Всем привет ранее я начал рассказ про сетевые утилиты системного администратора в статье "Утилита pathping или как диагностировать проблему на маршруте до сайта. Сетевые утилиты 3 часть ", движемся дальше и разбираем еще одну утилиту netstat или, как определить какие порты слушает ваш компьютер. Данная программка, будет не заменимым инструментом в багаже софта, любого системного инженера, поможет ему провести быструю диагностику ситуации и обнаружить ряд всевозможных проблем с сервисами и их доступностью. Команды netstatNetstat - Отображение активных подключений TCP , портов, прослушиваемых компьютером, статистики Ethernet, таблицы маршрутизации IP, статистики IPv4 (для протоколов IP, ICMP, TCP и UDP) и IPv6 (для протоколов IPv6, ICMPv6, TCP через IPv6 и UDP через IPv6) Представим ситуацию вы установили например MSM LSI утилиту для просмотра параметров RAID контроллера, запускаете утилиту, но ничего она не находит, потому что закрыт порт а какой вы не в курсе, и не всегда в инете можно быстро найти информацию об этом, для этого вы и может запустить netstat и посмотреть какой порт слушает ваш сервер с MSM процессом. Открываем командную строку Windows и вводим netstat ?. У вас выскочит справка утилиты. C:\Users\sem>netstat ? Отображение статистики протокола и текущих сетевых подключений TCP/IP. NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p протокол] [-r] [-s] [-x] [-t]
Давайте посмотрим интересные ключи утилиты netstat. Первое что вводим и у нас на экране появится статистика сетевых пакетов ethernet. Если добавим ключ -s то получим статистику по протоколам. Очень полезно посмотреть все что слушает ваш хост для этого пишем Вывод команды содержит Тип протокола либо TCP либо UDP, локальный адрес с портом который слушается и внешний адрес с портом и состояние действия. Для полного понимания информации, предоставляемой этой командой, необходимо понять принципы установки соединения в протоколе TCP/IP. Вот основные этапы процесса установки соединения TCP/IP: 1. При попытке установить соединение клиент отправляет сообщение SYN серверу. 2. Сервер отвечает собственным сообщением SYN и подтверждением (ACK). 3. После этого клиент отправляет сообщение ACK обратно на сервер, завершая процесс установки соединения. Процесс разрыва соединения состоит из следующих этапов: 1. Клиент сообщает "Я закончил", отправляя сообщение FIN серверу. На этом этапе клиент только принимает данные от сервера, но сам ничего не отправляет. 2. После этого сервер отправляет сообщение ACK и отправляет собственное сообщение FIN клиенту. 3. После этого клиент отправляет сообщение ACK серверу, подтверждая запрос сервера FIN. 4. При получении сообщения ACK от клиента сервер закрывает соединение. Понимание этапов процесса установки и разрыва соединения позволяет более прозрачно интерпретировать состояния соединений в выводе команды netstat. Соединения в списке могут находиться в следующих состояниях.
Утилита netstat или как определить какие порты слушает ваш компьютер. Сетевые утилиты 4 часть-06 |
Популярное:
Новое
- Настройка дополнительных реквизитов и дополнительных сведений номенклатуры 1с дополнительные реквизиты и сведения отличия
- Что делать, когда нет регистрационных данных
- Запрос на выборку данных (формулы) в MS EXCEL Эксель выборка по условию макрос
- Временная временная одноразовая электронная почта Temp Email, mail sites, регистрация в социальных сетях
- Что делать, если компьютер не видит телефон через USB-порт
- Как установить Windows на Mac?
- Asus rt n16 настройка прошивка
- Как узнать разрядность операционной системы и процессора в Windows
- Как выключить брандмауэр Windows: полная деактивация и отключение для отдельных программ Как полностью отключить брандмауэр windows 7
- Мощный конвертер HTML файлов в Doc, PDF, Excel, JPEG, Text Использование программы Total HTML Converter