iptables

Обсуждается все что связано с Юниксоподобными системами - от дистрибутивов до разбора ядра и конфигурации сервера.

Сообщение Crow » Вс янв 25, 2004 8:21 pm

- как сменить адрес источника у входящих в локальные приложения tcp/udp пакетов.
- как сменить порт получателя у выходящих из локальных приложений tcp/udp пакетов
iptables v1.2.8
Всё не так уж важно...
Crow
Капитан
 
Сообщений: 206
Зарегистрирован: Пт мар 28, 2003 4:31 am
Откуда: Ukraine>Kharkov
Пункты репутации: 0

Сообщение MAPA3bM » Вс янв 25, 2004 11:35 pm

Не получится..
Для первого нужно действие SNAT - а оно работает только на ВЫХОДЕ. Для второго же нужен DNAT - и он работает лишь на ВХОДЕ. Т.е. ни в том, ни в другом случае пакеты не попадают в зону действия соответствующих правил.
И вообще, <a href='http://www.linuxsecurity.com/resource_files/firewalls/IPTables-Tutorial/iptables-tutorial.html' target='_blank'>http://www.linuxsecurity.com/resource_file...s-tutorial.html</a>
MAPA3bM
Полковник
 
Сообщений: 1270
Зарегистрирован: Вт дек 31, 2002 12:54 am
Откуда: Приморье
Пункты репутации: 0

Сообщение Crow » Пн янв 26, 2004 5:25 am

У меня перевод туториала 2001 года( сенкс за линк -там посвежее и на родном :D ). Ещё я пробовал сделать DNAT в nat OUTPUT(вроди DNAT на выходе :) в туториале гласили,что эта цепочка на то время не работает) - работает, но вот адрес-то назначения мне менять не нужно :)
Всё не так уж важно...
Crow
Капитан
 
Сообщений: 206
Зарегистрирован: Пт мар 28, 2003 4:31 am
Откуда: Ukraine>Kharkov
Пункты репутации: 0

Сообщение MAPA3bM » Пн янв 26, 2004 5:47 am

2Crow
Так порт - это, собсно говоря, часть адреса :-), а отдельно его сменить позволяет только действие REDIRECT - но оно работает лишь для входящего трафика. Кстати, обрати внимание на схему прохождения пакетов через разные таблицы - она часто помогает понять не только можно ли сделать то или иное, но и почему так. И вообще, не совсем понятно - откуда такие задачи? Чем-то похоже на попытку проложить трубу через firewall :) . Огласи задачу конкретнее..
MAPA3bM
Полковник
 
Сообщений: 1270
Зарегистрирован: Вт дек 31, 2002 12:54 am
Откуда: Приморье
Пункты репутации: 0

Сообщение Crow » Пн янв 26, 2004 6:01 am

Да, на таблицы уже обратил - без них вообще нереально новичку :))
Да задача-то пустяковая и больше для интереса :)
Я в локалке и пользуюсь eChat'ом. У него через конфиг можно поменять стандартый порт на любой другой. Вот мне и захотелось поэкспериментировать.
Стандартный порт 8167 я меняю на 8166.
Код: выделить все
iptables -t nat -A PREROUTING -p udp -m udp --dport 8167 -j REDIRECT --to-ports 8166
iptables -t nat -A OUTPUT -p udp -m udp --dport 8166 -j DNAT --to-destination 255.255.255.255:8167

Однако локалка многосегментная, да и сам чат работает на удп броадкасте(знаю что кривой, а шо делать :) ), поэтому иногда приходится прописывать ИП людей из других подсетей в конфиг. Вот в этом случае второе правило и зарубит мне весь кайф :) . Ну а то, что я не вижу своих сообщений, так это ничё :)
По поводу первой задачи - на мой комп приходит удп броадкаст(не от этого долбанного Vypress chata, а другой), у которого мне нужно изменить ip-адрес источника так, чтобы проги на мне думали, что пакет пришёл от меня. Можно и адрес назначения поменять с броадкаста на мой, абы пакет был "от меня".
Всё не так уж важно...
Crow
Капитан
 
Сообщений: 206
Зарегистрирован: Пт мар 28, 2003 4:31 am
Откуда: Ukraine>Kharkov
Пункты репутации: 0

Сообщение MAPA3bM » Вт янв 27, 2004 12:32 am

2Crow
Понятно. Тогда возможен обходной путь: можно заставить прогу стучаться в другой порт, а на него повесить прокси-редиректор. Пример мелкого редиректора на перле есть в поставке UT2003, и я постил его где-то в web-разделе. Он как раз тем же занимается..
MAPA3bM
Полковник
 
Сообщений: 1270
Зарегистрирован: Вт дек 31, 2002 12:54 am
Откуда: Приморье
Пункты репутации: 0


Вернуться в Unix/Linux/*nix

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 35

cron