4

В этом посте есть правило iptables шаблона для пересылки трафика на маршрутизатор и на другой IP-адрес.

    iptables -t mangle -A POSTROUTING \
    -d [IP to spy on] \
    -j ROUTE –tee –gw [IP of wireshark]

   iptables -t mangle -A PREROUTING \
    -s [IP to spy on] \
    -j ROUTE –tee –gw [IP of wireshark]

Я не проверял команду, так как у меня нет ни одного конкретного ip, на который я хотел бы шпионить.

Однако я попытался следующее, что, кажется, имеет синтаксическую проблему:

    iptables -t mangle -A POSTROUTING \
    -j ROUTE –tee –gw [IP of wireshark]

   iptables -t mangle -A PREROUTING \
    -j ROUTE –tee –gw [IP of wireshark]

С ошибкой:

Try `iptables -h' or 'iptables --help' for more information.
Bad argument `–tee'
Try `iptables -h' or 'iptables --help' for more information.
Bad argument `–tee'

Затем я нашел следующий пост, который не имел никакого эффекта: Порт зеркала через iptables

Конечная цель, дублировать весь трафик, входящий и исходящий, из всех источников и всех пунктов назначения на определенный IP-адрес.

1 ответ1

15

ROUTE патч ядро патч , который должен быть применен к исходному коду ядра Linux для IPTables к работе: вы можете найти здесь всю необходимую информацию. Тем не менее, патчи, описанные на этой веб-странице, довольно старые (2005 г.), и я не уверен, что они корректно работают с новыми выпусками ядра.

Вместо этого, новое IPtables расширение подробно описано здесь , и они работают. В частности, заявлено, что:

iptables может использовать расширенные целевые модули: в стандартную поставку включены следующие.

и, таким образом, они должны быть доступны любому, у кого стандартная версия Linux. Одним из целевых расширений является TEE, для которого они заявляют:

TEE

Цель TEE будет клонировать пакет и перенаправить этот клон на другой компьютер в сегменте локальной сети. Другими словами, цель должна быть следующей, или вам придется настроить следующую, чтобы при необходимости переслать ее дальше.

--gateway ipaddr

Отправьте клонированный пакет на хост, доступный по указанному IP-адресу. Использование 0.0.0.0 (для пакетов IPv4) или :: (IPv6) недопустимо.

Чтобы перенаправить весь входящий трафик на eth0 в окно регистрации сетевого уровня:

-t mangle -A PREROUTING -i eth0 -j TEE - Ворота 2001: db8 :: 1

Название TEE явно предназначено для напоминания одной из стандартных команд tee, которая считывает из стандартного ввода и клонирует вывод (который просто идет в стандартный вывод) в указанный пользователем файл. То же самое и с пакетами: пакеты, к которым применяется правило, дублируются, один из них отправляется по назначению, в то время как только что созданный клон отправляется шпионской цели.

Таким образом, для клонирования всего входящего и исходящего трафика для ПК 192.168.1.15 на вашем маршрутизаторе (скажем, 192.168.1.1). и перенаправить на шпионский ПК 192.168.1.100, используйте:

 iptables -t mangle -A PREROUTING -d 192.168.1.15 -j TEE --gateway 192.168.1.100
 iptables -t mangle -A PREROUTING -s 192.168.1.15 -j TEE --gateway 192.168.1.100

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .