Intereting Posts
Мониторинг использования полосы пропускания Socksify как программа для Fedora? Как использовать туннель TUN / TAP из пользовательской программы? Что делает -f в команде «apt-get -f install»? Открытие нескольких разделенных окон с помощью экрана GNU с одним сценарием bash Почему новые cronjob игнорируются, если в SLES не перезагружается? Мой сетевой адаптер присутствует, но с помощью команды «lshw» показано, что «устройство не заявлено». Как заявить этот драйвер / устройство? cinnamon-settings и Nemo crash с некоторыми темами Cinnamon theme на Debian 8 Как искать и заменять несколько игл одним словом через одно выражение? Почему порядок результатов подстановки может отличаться при использовании с терминалом или с perl? Нет выхода, использующего параллель в тандеме с ag или ack opensuse: невозможно установить собственный графический драйвер fglrx Как я могу использовать беспроводную сеть и ethernet для работы с ubuntu? Как перевести libnotify на рычание Как поймать возврат каретки / строку в заявлении case

Solaris 10 – найти сервис, подключенный к порту прослушивания

Я диагностирую старую сборку Solaris 10 и во время сканирования портов я нашел открытый порт, который не включен в утвержденный список для этого сервера.

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

Набор функций netstat в этой сборке, по-видимому, ограничен по сравнению с более поздними версиями Solaris и другими операционными системами Unix. netstat -tulpn например, не работает.

Я также не могу установить lsof из-за ограничений безопасности.

Есть идеи?

Для Solaris вы можете использовать pfiles <pid> чтобы узнать, какие сетевые порты открыты определенным процессом. Используя for-loop on /proc/* вы можете использовать pfiles для каждого запущенного процесса для поиска порта, которым вы pfiles . Недостатком является то, что вам нужно будет root к Solaris 10 или стать привилегированным ( pfexec pfiles ) на Solaris 11, чтобы получить информацию.

Если вы можете стать root на хосте Solaris, вы должны использовать что-то вроде:

 PORT=22; for PID in /proc/*; do pfiles ${PID} |grep "port: ${PORT}" && echo ${PID}; done 

Это будет проходить через /proc/* , фильтр для указанного порта, и если совпадение найдено, идентификатор процесса ( /proc/#### ) отображается в следующей строке.