удаленная команда ssh tcpdump через шлюз, которая должна быть открыта в реальном времени в Wireshark на локальном компьютере

323
Trévelyan

Я (хост A - Windows основан на использовании plink) пытаюсь подключиться к удаленному серверу linux (хост C) через сервер шлюза linux (хост B) и запустить этот tcpdump на хосте C, чтобы он был передан обратно на хост A (предположим через Host BI) и открыт в режиме реального времени с помощью Wireshark на хосте A:

Ниже приведена команда, когда шлюз не используется («прямая удаленная выборка»). Итак, как мне заставить эту работу проходить через мой сценарий хоста B шлюза B выше?

Хост A $ plink.exe -ssh -pw abc123 root @ Хост C "tcpdump -s0 -U -n -w - -i eth0, а не порт 22" | "C: \ Program Files \ Wireshark \ Wireshark.exe" -k -i -

0
пожалуйста, просмотрите справку по редактированию уценки по адресу https://superuser.com/editing-help и используйте разметку, чтобы правильно отформатировать примеры кода и / или вывод терминала. maoizm 5 лет назад 0

1 ответ на вопрос

0
grawity

Там есть эквивалент OpenSSH ProxyCommand:

plink -proxycmd "plink -nc %host:%port user@HostB" root@HostC ... 

Обычные вложенные команды должны работать так же хорошо ( -Aв этом случае полезна опция переадресации агента SSH):

plink user@HostB "ssh root@HostC tcpdump ..." | wireshark 

Похожие вопросы