Какой процесс занимает порт
Частенько появляется необходимость узнать, какой из запущенных процессов занимает определенный сетевой порт. Особенно это актуально если порт не относится к числу стандартных, то есть 22,21,80 и т.д. и так понятно кто занимает (SSH, FTP, HTTP), тем более что в выдаче netstat, это написано после PID процесса, но бывают исключения.
Например, смотрим вывод netstat'а
root@debian8:~/# netstat -tupln Active Internet connections (only servers) .............................. tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 1548/0 ..............................Порт 6010, имя процесса не известно, зато известен PID процесса, это 1548. По номеру PID смотрим что это за процесс:
root@debian8:~/MITMf # ps -p 1548 PID TTY TIME CMD 1548 ? 00:00:00 sshdНу или можно более подробно, используя lsof:
root@debian8:~/MITMf # lsof -p 1548 .......... sshd 1548 root txt REG 8,1 787080 271442 /usr/sbin/sshd .......... sshd 1548 root 7u IPv6 20576 0t0 TCP localhost:6010 (LISTEN) ..........Порт 6010 используется сервисом openssh для X11 forwarding (проброска графических рабочих столов). Если этот функционал не используется, лучше отключить его в файле конфигурации sshd сервера /etc/ssh/sshd_config
X11Forwarding noпосле чего нужно перезапустить и сервис и переподключиться. В windows это можно сделать так,жмем WIN+R, вписываем cmd, жмем Ok, далее уже в командной строке
netstat -an .......... TCP 0.0.0.0:10001 0.0.0.0:0 LISTENING 1592 ..........PID процесса указан в последней колонке. Далее выполняем команду
tasklist | findstr "1592" tonido.exe 1592 Console 1 25 960 КБНу и видим кто у нас тут повис на порту 10001. Удачи.
Комментарии
Отправить комментарий