Мне нужно сделать небольшую модификацию входящего трафика от известного хоста tcp: порт, прежде чем процесс, обрабатывающий соединение, получит поток.
Например, пусть 192.168.1.88 будет удаленным хостом, на котором работает веб-сервер.
Мне нужно , что, когда процесс на моем локальном хосте принимает данные от 192.168.1.88:80 (например , браузера), данные сначала изменен путем замену text-A
с text-B
, как это:
- 127.0.0.1: ... подключается к 192.168.1.88:80
127.0.0.1: ... отправляет на 192.168.1.88:80:
GET /
192.168.1.88:80 отправляет на 127.0.0.1: ...:
HTTP/1.0 200 OK Content-Type: text/plain Some text-A, some other text
Эти данные несколько перехватываются системой и передаются программе, вывод которой:
HTTP/1.0 200 OK Content-Type: text/plain Some text-B, some other text
система передает измененные данные процессу, обрабатывающему 127.0.0.1: ..., как если бы он исходил из 192.168.1.88:80.
Предполагая, что у меня есть потоковый способ внести эти изменения (используя, sed
например), какой самый простой способ предварительно обработать входящий поток tcp?
Я предполагаю, что это будет связано iptables
, но я не очень хорош в этом.
Обратите внимание, что приложение должно иметь дело с исходным хостом, поэтому настройка прокси вряд ли является решением.