Есть сеть 10.10.5.х
Сервер 10.10.5.10 он работает чё то на типе маршрутизатора
Два интерфейса eth0 = 10.10.5.10 eth1 = 192.168.1.110 смотрит на АДСЛ
echo 1> /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
всё бегает и работает но задача состоит в том что бы пробросить аську которая у нашего провайдера бесплатная то есть идея состоит в что бы добавить у пользователей маршут
route add login.icq.com mask 255.255.255.255 10.10.5.10
на локальном днс прописать что login.icq.com это на самом деле адрес аськт нашего провайдера
но как сделать так что бы клиент не заподозрил подмены то есть комп загрузил инет не подключен он у нас через ВПН
и как закрыть eth1 от выхода через него на другие айпи и порты
Если всё правильно понял из вышеописанного:
# установка разрешающей политики на пост-маршрутизацию
iptables -P POSTROUTING ACCEPT
# очистка таблицы FORWARD
iptables -F FORWARD
# выставление политики разрешающей форвардить
iptables -P FORWARD ACCEPT
# разрешение форвардить пакеты с eth0 на eth1 от 10.10.5.0/24 на provider_icq_ip на порт 5190
iptables -A FORWARD -i eth0 -o eth1 -s 10.10.5.0/24 -d provider_icq_ip --dport 5190 -j ACCEPT
# разрешение на хождение пакетов в обратном направлении
iptables -A FORWARD -i eth1 -o eth0 -s provider_icq_ip -d 10.10.5.0/25 --sport 5190 -j ACCEPT
# вместо provider_icq_ip - указать ip icq-сервера провайдера
# запрет на форвардинг всего остального
iptables -A FORWARD -j DROP>route add login.icq.com mask 255.255.255.255 10.10.5.10
При написании этой строки у клиента - на dns-сервере, который используется клиентом запись для login.icq.com уже должна быть подменена, т.к. route не добавляет dns-имена, а конвертирует их в ip в момент добавления.
iptables -P POSTROUTING ACCEPT
на эту команду ругается iptables: Bad built-in chain nameбез неё всё окей применяется только не пускает при чём если сбросить правила iptables -F то начинает пропускать
пробовал убрать порты назначения не помогло[root@wln-fileserver /]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destinationChain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 10.10.5.0/24 217.70.119.181 tcp dpt:5190
ACCEPT tcp -- 217.70.119.181 10.10.5.0/25 tcp spt:5190
DROP all -- 0.0.0.0/0 0.0.0.0/0Chain OUTPUT (policy ACCEPT)
target prot opt source destinationвот как сча всё выглядит
#iptables -P POSTROUTING ACCEPT
iptables -F FORWARD
iptables -P FORWARD ACCEPT
iptables -A FORWARD -i eth0 -o eth1 -s 10.10.5.0/24 -d 217.70.119.181 -p tcp --dport 5190 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -s 217.70.119.181 -d 10.10.5.0/25 -p tcp --sport 5190 -j ACCEPT
iptables -A FORWARD -j DROPЗаранее спасибо
>iptables -P POSTROUTING ACCEPT
>на эту команду ругается iptables: Bad built-in chain nameпардон, прогнался:
iptables -t nat -P POSTROUTING ACCEPT>без неё всё окей применяется только не пускает при чём если сбросить
>правила iptables -F то начинает пропускать
>пробовал убрать порты назначения не помоглоЧто выдаёт iptables -t nat -L?
Перед дропом в таблице форвард вставь лог, посмотри совпадают ли указанные ип/порты/интерфейсы.
iptables -I FORWARD 3 -j LOG --log-prefix "FWD: " # в твоём случаеА проще - напиши в асю - 26420654.