URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 75993
[ Назад ]

Исходное сообщение
"Iptables - запрос на роутер"

Отправлено casp3r , 31-Авг-07 15:07 
Такая вот проблема.
Есть iptables.
Сеть на 50 компов. Роутер подключен к модему(ip роутера 192.168.1.2). У них выставлен шлюз - 192.168.1.1(там висит squid)
http у них идёт через прокси. А вот почта не идёт (так как squid не держит smtp и pop3 сессий.) Как сделать так, чтобы средствами iptables перенаправить запросы с 192.168.1.1:25 на 192.168.1.2:25?

Содержание

Сообщения в этом обсуждении
"Iptables - запрос на роутер"
Отправлено Oyyo , 31-Авг-07 15:40 
>Такая вот проблема.
>Есть iptables.
>Сеть на 50 компов. Роутер подключен к модему(ip роутера 192.168.1.2). У них
>выставлен шлюз - 192.168.1.1(там висит squid)
>http у них идёт через прокси. А вот почта не идёт (так
>как squid не держит smtp и pop3 сессий.) Как сделать так,
>чтобы средствами iptables перенаправить запросы с 192.168.1.1:25 на 192.168.1.2:25?

iptables -A FORWARD -j ACCEPT --dport 25
iptables -A FORWARD -j ACCEPT --sport 25 -m state --state RELATED,ESTABLISHED

echo 1 > /proc/sys/net/ipv4/ip_forward
или для автозагрузки в файле  /etc/sysctl.conf
net.ipv4.ip_forward = 1


"Iptables - запрос на роутер"
Отправлено reader , 31-Авг-07 15:55 
И помоему еще SNAT иначе 192.168.1.2, ответит напрямую клиенту

"Iptables - запрос на роутер"
Отправлено casp3r , 31-Авг-07 15:55 
не работает. iptables ругается на неизвестные аргументы



"Iptables - запрос на роутер"
Отправлено casp3r , 31-Авг-07 16:00 

>iptables -A FORWARD -j ACCEPT --dport 25
>iptables -A FORWARD -j ACCEPT --sport 25 -m state --state RELATED,ESTABLISHED

А где указание куда переправить??? На какой адрес.



"Iptables - запрос на роутер"
Отправлено reader , 31-Авг-07 16:03 
отправятся согласно таблицы маршрутизации

"Iptables - запрос на роутер"
Отправлено casp3r , 31-Авг-07 16:10 
>отправятся согласно таблицы маршрутизации

мда.... ну все равно у меня эти строчки - выводят ошибку...


"Iptables - запрос на роутер"
Отправлено Oyyo , 31-Авг-07 16:12 
>>отправятся согласно таблицы маршрутизации
>
>мда.... ну все равно у меня эти строчки - выводят ошибку...

ошибку в студию
неужели это сложно?


"Iptables - запрос на роутер"
Отправлено casp3r , 31-Авг-07 16:16 
>>>отправятся согласно таблицы маршрутизации
>>
>>мда.... ну все равно у меня эти строчки - выводят ошибку...
>
>ошибку в студию
>неужели это сложно?

iptables -A FORWARD -j ACCEPT --dport 25

выводит - iptables v1.2.9: Unknown arg `--dport`


"Iptables - запрос на роутер"
Отправлено alexlp , 31-Авг-07 16:19 
>>>>отправятся согласно таблицы маршрутизации
>>>
>>>мда.... ну все равно у меня эти строчки - выводят ошибку...
>>
>>ошибку в студию
>>неужели это сложно?
>
>iptables -A FORWARD -j ACCEPT --dport 25
>
>выводит - iptables v1.2.9: Unknown arg `--dport`

Нет определенного модуля, скорее всего поэтому и не работает


"Iptables - запрос на роутер"
Отправлено Oyyo , 31-Авг-07 16:23 

>iptables -A FORWARD -j ACCEPT --dport 25
>
>выводит - iptables v1.2.9: Unknown arg `--dport`

упс!!
прошу прощения, при фильтрации по портам обязательное указание протокола т.е.
iptables -A FORWARD -j ACCEPT -p tcp --dport 25

и во второе правило тоже добавить
но если у вас в цепочке FORWARD политика ACCEPT, то эти правила не обязательны, главное разрешить FORWARD


"Iptables - запрос на роутер"
Отправлено casp3r , 31-Авг-07 16:30 
>[оверквотинг удален]
>>
>>выводит - iptables v1.2.9: Unknown arg `--dport`
>
>упс!!
> прошу прощения, при фильтрации по портам обязательное указание протокола т.е.
>iptables -A FORWARD -j ACCEPT -p tcp --dport 25
>
>и во второе правило тоже добавить
>но если у вас в цепочке FORWARD политика ACCEPT, то эти правила
>не обязательны, главное разрешить FORWARD

спасибо конечно.... но пользователь всё равно не может отправить почту......


"Iptables - запрос на роутер"
Отправлено casp3r , 31-Авг-07 16:32 

> спасибо конечно.... но пользователь всё равно не может отправить почту......

Как это можно реализовать бы? Ещё какими нибудь способами



"Iptables - запрос на роутер"
Отправлено reader , 31-Авг-07 16:40 
192.168.1.1 у клиентов стоит именно шлюзом или адресом прокси?

на 192.168.1.2 надеюсь разрешены пакеты на 25 порт.
с 192.168.1.1- машины покажи вывод route и iptables-save


"Iptables - запрос на роутер"
Отправлено casp3r , 31-Авг-07 16:44 
route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     0      0        0 eth1
link-local      *               255.255.0.0     U     0      0        0 eth1
loopback        *               255.0.0.0       U     0      0        0 lo
default         192.168.1.2     0.0.0.0         UG    0      0        0 eth1

# Generated by iptables-save v1.2.9 on Fri Aug 31 15:43:08 2007
*filter
:INPUT ACCEPT [5003:1660857]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [3749:1222158]
-A FORWARD -p tcp -m tcp --dport 25 -j ACCEPT
-A FORWARD -p tcp -m tcp --sport 25 -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Fri Aug 31 15:43:08 2007
# Generated by iptables-save v1.2.9 on Fri Aug 31 15:43:08 2007
*nat
:PREROUTING ACCEPT [3765:307862]
:POSTROUTING ACCEPT [3379:202484]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 5
COMMIT
# Completed on Fri Aug 31 15:43:08 2007

При выставлении шлюзом роутер - все работает.. Значит 25 порт открыт.



"Iptables - запрос на роутер"
Отправлено Oyyo , 31-Авг-07 16:41 

> спасибо конечно.... но пользователь всё равно не может отправить почту......

скопировал ваше первое сообщение
>Такая вот проблема.
>Есть iptables.
>Сеть на 50 компов. Роутер подключен к модему(ip роутера 192.168.1.2). У них
>выставлен шлюз - 192.168.1.1(там висит squid)
>http у них идёт через прокси. А вот почта не идёт (так
>как squid не держит smtp и pop3 сессий.) Как сделать так,
>чтобы средствами iptables перенаправить запросы с 192.168.1.1:25 на 192.168.1.2:25?

это на какой машие
>Есть iptables.

"у них"
>http у них идёт через прокси.

вот "у них" идолжны быть такие правила

а не проще клиентам (пользователям) настроить почтовик на работу через прокси, это есть в свойсвах подключения любого почтового клиента


"Iptables - запрос на роутер"
Отправлено casp3r , 31-Авг-07 16:47 
нет. надо чтобы всё было прозрачно.
iptables там же где и сквид. на 192.168.1.1

"Iptables - запрос на роутер"
Отправлено reader , 31-Авг-07 16:58 
если это добавить на 192.168.1.1
-A POSTROUTING -p tcp --dport 25 -j SNAT --to-source 192.168.1.1

"Iptables - запрос на роутер"
Отправлено Oyyo , 31-Авг-07 16:59 
>нет. надо чтобы всё было прозрачно.
>iptables там же где и сквид. на 192.168.1.1

сквида делает маскарадинг, подставляет на все проходящие через неё пакеты ИП исходящего интерфейса, для всего остального у вас нет маскарада
iptables -t nat -A POSTROUTING -o $eth_out -j MASQUERADE

или как советовал reader
iptables -t nat -A POSTROUTING -o $eth_out -j SNAT --to-source $IP_out


"Iptables - запрос на роутер"
Отправлено casp3r , 31-Авг-07 17:03 
>>нет. надо чтобы всё было прозрачно.
>>iptables там же где и сквид. на 192.168.1.1
>
>сквида делает маскарадинг, подставляет на все проходящие через неё пакеты ИП исходящего
>интерфейса, для всего остального у вас нет маскарада
>iptables -t nat -A POSTROUTING -o $eth_out -j MASQUERADE
>
>или как советовал reader
>iptables -t nat -A POSTROUTING -o $eth_out -j SNAT --to-source $IP_out

Всё!! Всем большое спасибо!! Просто забыл - echo 1 > /proc/sys/net/ipv4/ip_forward