LINUX.ORG.RU
ФорумAdmin

Почтовый клиент через proxy

 ,


0

1

Добрый день. Появилась задача настроить почту через Outlook на внешнем сервере, но тут стоит squid и его сосед firewall. Почитал много форумов везде говорят что нужно менять настройку в iptables. До этого все делал через webmin кому нужен был прямой доступ в интернет.


Ответ на: комментарий от Alick

В простейшем случае:

iptables -t nat -A POSTROUTING -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

А дальше всё зависит от того, что уже есть, и от того, что хочется получить. Если есть какой-то файрвол, вероятно, форвардинг включен. Если кто-то куда-то ходит, вероятно, что и включен какой-то NAT. Тогда надо исходить из текущей конфигурации.

В общем, нет однозначного ответа, какое правило нужно применить. Вместо MASQUERADE ещё SNAT может быть. Опять же, ещё IPv6 уже встречается.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от Alick

А порты указывать не нужно ?

«А дальше всё зависит от того, что уже есть, и от того, что хочется получить». Можно и с портами, можно и с IP-адресами. А можно и без.

Я все делаю через web интерфейс

Я не пользуюсь такими штуками, они все разные. :-)

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от AS

# Generated by iptables-save v1.4.7 on Fri Aug 1 09:15:49 2014 *nat :PREROUTING ACCEPT [7127:575676]

:POSTROUTING ACCEPT [879:154427]

:OUTPUT ACCEPT [565:131667]

COMMIT # Completed on Fri Aug 1 09:15:49 2014 # Generated by iptables-save v1.4.7 on Fri Aug 1 09:15:49 2014 *mangle

:PREROUTING ACCEPT [48064:16688874]

:INPUT ACCEPT [42593:16312372]

:FORWARD ACCEPT [4592:267066]

:OUTPUT ACCEPT [49114:29162394]

:POSTROUTING ACCEPT [53694:29428627]

COMMIT # Completed on Fri Aug 1 09:15:49 2014

# Generated by iptables-save v1.4.7 on Fri Aug 1 09:15:49 2014

*filter :FORWARD ACCEPT [0:0]

:INPUT ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

-A INPUT -p icmp -d 10.100.1.10/32 -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -p tcp -m tcp -m state -i eth0 --dport 22 --state NEW -j ACCEPT

-A INPUT -p tcp -m tcp -m state -i eth0 --dport 10000 --state NEW -j ACCEPT -A INPUT -p tcp -m tcp -d 10.100.1.10/32 --dport 4480 -j ACCEPT

-A INPUT -p tcp -m tcp -d 10.100.1.10/32 --dport 80 -j ACCEPT

-A FORWARD -s 10.100.1.186/32

-A FORWARD -s 10.100.1.16/32 -j ACCEPT

Alick
() автор топика
Ответ на: комментарий от AS

Нет не полный. 2 последних правила это перенаправляемые пакеты а остальное выше это входящие пакеты. без J наверное то что в правиле указано «ничего не делать»

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

Секция *nat там есть ? Потому как правило должно попасть туда. Незаписанных правил, которые потом назначаются, нет ? Лучше бы «iptables -nL -t nat», а не файлик.

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

iptables -nL -t nat это команда я так понимаю? ее выполнить и содержимое прислать?

Alick
() автор топика
Ответ на: комментарий от AS

[root@proxy ~]# iptables -nL -t nat Chain PREROUTING (policy ACCEPT) target prot opt source destination

Chain POSTROUTING (policy ACCEPT) target prot opt source destination

Chain OUTPUT (policy ACCEPT) target prot opt source destination

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

ее выполнить и содержимое прислать ?

Ну я же давал ссылку на lorcode...

Вcё пусто, значит, для начала, сойдёт и
iptables -t nat -A POSTROUTING -j MASQUERADE

По хорошему, можно привязать ещё к исходящему интерфейсу. Ещё задать ограничение по src ip, иначе все везде смогут пойти мимо squid-а. По портам, если надо, тоже.

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

iptables -t nat -A POSTROUTING -j MASQUERADE эту строчку куда добавить? в конфиг iptable? Я новичок в этом деле. Привык только через webmin делать. Только я не вижу что здесь порты указаны которые мне нужны

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

в конфиг iptable ?

Нет, просто от рута запустить. Потом iptables-save, или как там у тебя. Чтобы в этот файл записалось. /etc/sysconfig/iptables файл ?

Только я не вижу что здесь порты указаны которые мне нужны

Здесь не указаны. Будет полный NAT, на всё подряд, не только на pop/imap/smtp. Потому и предупреждаю, что могут начать ходить мимо squid.

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

в конфиг iptable ?

Нет, просто от рута запустить. Потом iptables-save, или как там у тебя. Чтобы в этот файл записалось. /etc/sysconfig/iptables файл ? Да там. Стоит CentOS

Нет мне не нужно так что бы ходили мимо squid. Мне бы правило добавить только на pop/imap/smtp

Alick
() автор топика
Ответ на: комментарий от AS

Только вот по поводу webmin. Если у него какие-то свои конфиги, он может не подхватить это изменение и перетереть его в следующий раз. Если он сам читает sysconfig/iptables, то нормально будет.

Мне бы правило добавить только на pop/imap/smtp

А это пусть будет домашним заданием. Либо надо три правила по каждому протоколу, либо одно, и с -m multiport. Начать можешь с уже озвученного простого, убедись, что заработало, потом ограничивай.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от AS

Собственно говоря я и писал по этому правилу только. До этого все через webmin делал и все работает.Правило нужно добавлять во входящие или перенаправляемые?

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

Правило нужно добавлять во входящие или перенаправляемые ?

Написано же: -A POSTROUTING -t nat

Стоит ознакомиться с диаграммой прохождения пакетов:
https://en.wikipedia.org/wiki/Netfilter

В данном случае речь про network layer.

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