LINUX.ORG.RU
ФорумAdmin

IPTABLES как замаскарадить 25 и 110 порты?


0

0

Привет всем! Проблема такая, есть инет, в качестве рутера linux+iptables тадо чтобы все локальные юзера 10.1.1.0/24 могли получать почту с pop.mail.ru и посылать через smtp.mail.ru как бы это всё хитро замаскарадить?? Желательно конкретный пример. Заранее спасибо!


iptables -A POSTROUTING -s 192.168.0.0/24 -p tcp --dport 110 -o eth1 -j SNAT -t nat --to-source A.A.A.A
iptables -A POSTROUTING -s 192.168.0.0/24 -p tcp --dport 25 -o eth1 -j SNAT -t nat --to-source A.A.A.A
iptables -A POSTROUTING -s 192.168.0.0/24 -p tcp --dport 53 -o eth1 -j SNAT -t nat --to-source A.A.A.A
iptables -A POSTROUTING -s 192.168.0.0/24 -p udp --dport 53 -o eth1 -j SNAT -t nat --to-source A.A.A.A
iptables -A POSTROUTING -s 192.168.0.0/24 -p icmp -o eth1 -j SNAT -t nat --to-source A.A.A.A

где А.А.А.А - внешний адрес твоего шлюза. ИЦМП и ДНС имеет смысл открыть, если у тебя не поднят свобственный ДНС. И, разве бывают локальными адреса на 10.1.1.0/24 ???

anonymous
()

10.1.1.0/24 тоже может быть локальным. есть ещё вопросы..

Сделал я так.

iptables -A POSTROUTING -s 10.1.1.0/24 -p tcp --dport 110 -o eth2 -j SNAT -t nat --to-source А.А.А.А iptables -A POSTROUTING -s 10.1.1.0/24 -p tcp --dport 25 -o eth2 -j SNAT -t nat --to-source А.А.А.А iptables -A POSTROUTING -s 10.1.1.0/24 -p tcp --dport 53 -o eth2 -j SNAT -t nat --to-source А.А.А.А iptables -A POSTROUTING -s 10.1.1.0/24 -p udp --dport 53 -o eth2 -j SNAT -t nat --to-source А.А.А.А iptables -A POSTROUTING -s 10.1.1.0/24 -p icmp -o eth2 -j SNAT -t nat --to-source А.А.А.А Чё-то не работает.. а eth2 должен быть внешний??

pimbler
() автор топика

Криво как-то получилось..

pimbler
() автор топика

Исправляю. Сделал так:

iptables -A POSTROUTING -s 10.1.1.0/24 -p tcp --dport 110 -o eth2 -j SNAT -t nat --to-source А.А.А.А

iptables -A POSTROUTING -s 10.1.1.0/24 -p tcp --dport 25 -o eth2 -j SNAT -t nat --to-source А.А.А.А

iptables -A POSTROUTING -s 10.1.1.0/24 -p tcp --dport 53 -o eth2 -j SNAT -t nat --to-source А.А.А.А

iptables -A POSTROUTING -s 10.1.1.0/24 -p udp --dport 53 -o eth2 -j SNAT -t nat --to-source А.А.А.А

iptables -A POSTROUTING -s 10.1.1.0/24 -p icmp -o eth2 -j SNAT -t nat --to-source А.А.А.А

Не помогло, поменял eth2 на eth0 (Внутренний) тоже не помогло!

Может ещё чё-то надо разрешить?

pimbler
() автор топика

Что именно не получилось? Не смогли подключиться? Не смогло по имени найти адрес? А по айпи адресу соединяется?

Skor78
()

хм..и еще раз..докальные адреса нмогут быть только из серии 192.168.0.0 или 172.0.0.0 или 127.0.0.0 :))))

anonymous
()

Почемуж эт тока 192.168.0.0 или 172.0.0.0 или 127.0.0.0 есть еще 10.0.0.0 сеточка класса C выделены сетки специально из каждого класса. А на счет iptables я наврядли подскажу, тк долгое время юзал ipchains а с iptables нет времени разобраться

anonymous
()

eth1 у меня смотрящий во внешний мир, тот который А.А.А.А ... еще по идее надо до всего этого
echo 1 > /proc/sys/net/ipv4/ip_forward
сказать...
Ну и в таблице роутинга тоже чтоб все правильно было....
А если у тебя в локалке айпишники честные, тебе надо NAT, а это я еще не делал.

anonymous
()

С IP адресами всё нормально! DNS доступен и работает (у меня свой named вращается). а вот когда я на клиентской машине в Outlook Express делаю Ctrl+m (типа доставить почту), то он говорит что не может установить соединение, Я даже попробовал "telnet pop.mail.ru 110 " и нифига! Чё-то с маскарадингом... может ещё ACCEPT на чё-то надо сделать?

pimbler
() автор топика

В цепочку форвард надо вставить правило типа: IPTABLES -A FORWARD -p TCP --dport 110 -j ACCEPT IPTABLES -A FORWARD -p TCP --dport 25 -j ACCEPT

а так, почитай доку - IPTABLES Tutorial

pinokkio
()

Странно.. Вышеуказанное у меня работает без всяких нареканий. Пропускает только днс запросы, пинги и почту...А попробуй еще
telnet ip-adress 110
может ихние машины твой днс не уважают :)))

anonymous
()

так..папарядку :))
1) шлюз+днс на клиентских машинах выставил?
2) route в студию
3) если у тебя собственный днс, то прибей нафиг исходящие ицмп и весь 53 порт

anonymous
()

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
212.17.20.64 * 255.255.255.240 U 0 0 0 eth2
10.1.1.0 * 255.255.255.0 U 0 0 0 eth0
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default h-20-65.siberia 0.0.0.0 UG 0 0 0 eth2

Шлюз и ДНС работают... tracert пытается идти сразу на сервер... Даже и не знаю как и чё!
Уж выручайте братцы!

pimbler
() автор топика

еще может быть у тебя iptables не подгружен - посмотри lsmod есть ли:
ip_conntrack 16908 1 (autoclean) [iptable_nat]
ip_tables 11392 4 [iptable_filter iptable_nat]

Еще попробуй написать pelm@mail.ru -- вышлю, как у меня это запускается. Хотя это я уже и так выше написал :))

anonymous
()
Ответ на: комментарий от anonymous

lsmod говрит что нету НИФИГА!! ЧЁ ДЕЛАТЬ?

??

pimbler
() автор топика
26 августа 2002 г.

-A PREROUTING -p tcp -m tcp --dport 110 -j DNAT --to-destination <нужный адр> -A PREROUTING -p tcp -m tcp --dport 25 -j DNAT --to-destination <нужный адр>

Gofaizen
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.