Могу ли я контролировать локальный домен домена unix, например, tcpdump?

Я хотел бы отслеживать ответы в unix-сокете, не нарушая исходных соединений и не связывая их с скриптом для обработки.

Я знаю, как это сделать с помощью tcpdump для подключений tcp, но я не могу найти решение для локальных сокетов unix.

Возможно ли это?

  • Что происходит, когда я завершаю процесс, и буфер отправки сокета не пуст?
  • Совместимость процессоров и материнских плат
  • Откройте общедоступный IP-адрес сети без подключения
  • Tcpdump promiscuous mode на OSX 10.8
  • Мой tcpdump всегда фильтрует пакеты?
  • Выполнение tcpdump удаленно при локальном захвате пакетов
  • 3 Solutions collect form web for “Могу ли я контролировать локальный домен домена unix, например, tcpdump?”

    Есть парень, который утверждает, что делает это, создавая приложение, которое действует как шлюз между двумя сокетами и регистрирует все передаваемые данные. Таким образом, вы не можете использовать сокет, но если вы можете перезапустить службу и настроить ее для использования этого приложения-парня, вы сможете увидеть весь трафик.

    Вот ссылка на сообщение: Unix Socket Sniffer

    Есть еще один способ, которым вам нужно найти идентификатор процесса, подключенный к сокету, затем найти с помощью дескриптора файла сокета, а затем нажать на дескриптор файла, используя strace.

    Если вы можете остановить любой клиент / сервер с помощью сокета и перенастроить его, я бы рекомендовал всегда первый метод, второй метод – сложнее и требует, чтобы вы использовали текущий процесс, который в некоторых приложениях мог привести к его сбою.

    Надеюсь, что кто-то просветит нас с помощью метода anoter 🙂

    Удачи

    Вы можете использовать socat.

    sudo mv /path/to/sock /path/to/sock.original sudo socat -t100 -x -v UNIX-LISTEN:/path/to/sock,mode=777,reuseaddr,fork UNIX-CONNECT:/path/to/sock.original 

    Что происходит выше: сначала переместите исходный сокет в sock.original. Socat создает новый сокет («UNIX-LISTEN») в исходном месте и пересылает все в исходное («UNIX-connect»). -v сообщает socat также выводить вывод на STDERR.

    Вы также можете попробовать использовать strace на одном из процессов по обе стороны от сокета, так как это позволит вам смотреть, что написано / прочитано. Я нашел в своей рабочей среде, у меня нет сота, но у меня есть strace.

    Для любых полезных целей установка -s на что-то большое является обязательным.

    Давайте будем гением компьютера.