Как я могу определить, какая программа или пользователь подключен к определенному порту после факта?

Я изучаю журнал выхода IPTABLES моего компьютера вчера и замечаю следующее:

IN = OUT = eth0 SRC = 192.168.1.1 DST = 69.46.36.10 LEN = 60 TOS = 0x00 PREC = 0x00 TTL = 64 ID = 12345 DF PROTO = TCP SPT = 56789 DPT = 4000 WINDOW = 29200 RES = 0x00 SYN URGP = 0

Посмотрев список известных портов TCP , есть только игра Diablo II, использующая порт 4000 . У меня нет игры, установленной на моем компьютере. Я попытался, но не мог определить, какие другие службы могут подключаться к порту.

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

2 Solutions collect form web for “Как я могу определить, какая программа или пользователь подключен к определенному порту после факта?”

Вы можете использовать систему аудита для регистрации всех системных вызовов connect() .

 sudo auditctl -a exit,always -F arch=b64 -S connect -k connectLog sudo auditctl -a exit,always -F arch=b32 -S connect -k connectLog 

Затем вы можете выполнить поиск:

 sudo ausearch -i -k connectLog -w --host 69.46.36.10 

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

 type=SOCKADDR msg=audit(02/09/14 12:31:57.966:60482) : saddr=inet host:69.46.36.10 serv:4000 type=SYSCALL msg=audit(02/09/14 12:31:57.966:60482) : arch=x86_64 syscall=connect success=no exit=-4(Interrupted system call) a0=0x3 a1=0x20384b0 a2=0x10 a3=0x7fffbf8c9540 items=0 ppid=21712 pid=25423 auid=stephane uid=stephane gid=stephane euid=stephane suid=stephane fsuid=stephane egid=stephane sgid=stephane fsgid=stephane tty=pts5 ses=4 comm=telnet exe=/usr/bin/telnet.netkit key=connect 

Кстати, я видел, что IP-адрес разрешен с grm.feedjit.com и попытки подключения к этому на 400x портах iPhone.

Используйте grep с netstat для определенного порта . Для проверки бесконечного периода времени с временной задержкой вы можете использовать следующую команду –

 while($1); do netstat -anp | grep :80; sleep 1s;done > output.txt 
  • tcp6 в выходном netstat
  • Почему для очистки прослушивающего TCP-порта после завершения программы требуется несколько минут?
  • TCP умирает на ноутбуке Linux
  • SSH-подобный сеанс, который выживает при отключении физической сети
  • Перенаправить stdin и stdout в порты
  • Написание TCP-сервера в bash
  • Linux медленное исходящее соединение
  • rsh отлично работает в обычном пользователе, но не в корне, очень странно, почему?
  • Пользователь, связанный с сокетом
  • Socat - отсутствие буферизации
  • «Tcpdump» для захвата последних пакетов
  • Interesting Posts

    Зашифрованная загрузка падает на оболочку, как настроить LVM crypttab последовательно? «ALERT! {логический путь тома} не существует '

    двунаправленная синхронизация с rsync

    перенаправление вывода / dev / fb0 на / dev / fb2

    AWK с спецификацией: Есть ли классный способ обработки спецификации Unicode с регулярным выражением?

    Термин gnome – это тип оболочки без входа?

    Как установить NTP-сервер, который уязвим для NTP-усиления

    Как просмотреть текстовый файл cp1251 в консоли UTF-8?

    bash + регулярное выражение + подтверждение имени машины

    Проблема с запуском Oracle Linux после переноса формы OVM в hyper-v

    Удаление цветовых кодов из вывода

    Как разрешить неустойчивость, предпочитая стабильные пакеты в gentoo?

    Инициализация полностью подключенной сети ssh

    Не удалось выполнить SSH в Google Cloud Server после перезагрузки

    Подведение общих строк в разных файлах

    Как исправить неподходящую систему Ubuntu?

    Linux и Unix - лучшая ОС в мире.