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

Исходное сообщение
"Два канала, PF и почта. Не пашет почтовик."

Отправлено leviafanovich , 21-Дек-10 12:40 
Вообщем есть два провайдера, нужно подключить сразу двух к серверу. Естественно что и 2 шлюза.
int_if="vr0"
ext_if1="rl1"
ext_gw1="222.222.222.222"
ext_if2="rl0"
ext_gw2="111.111.111.111"
lan1="{ 192.168.12.0/24, !<lan2> }"
table <lan2> persist { 192.168.12.100 }
table <sshguard> persist
set skip on lo0
set block-policy return
scrub in all

nat on $ext_if1 from $lan1 to any -> $ext_if1
nat on $ext_if2 from <lan2> to any -> $ext_if2

block in log quick from <sshguard> label "ssh bruteforce"

pass out on $int_if from any to { $lan1, <lan2> }
pass in quick on $int_if from { $lan1, <lan2> } to $int_if
pass in on $int_if route-to ($ext_if1 $ext_gw1)  from $lan1 to any keep state
pass in on $int_if route-to ($ext_if2 $ext_gw2)  from <lan2> to any keep state
pass out on $ext_if1 from any to any keep state
pass out on $ext_if2 from any to any keep state
pass out on $ext_if1 route-to ($ext_if1 $ext_gw1) from $ext_if1 to any
pass out on $ext_if2 route-to ($ext_if2 $ext_gw2) from $ext_if2 to any

pass in on $ext_if1 proto tcp from any to $ext_if1 port ssh
pass in on $ext_if2 proto tcp from any to $ext_if2 port ssh

pass in inet proto icmp all icmp-type echoreq                


Вообщем раздача инета проходит (для всех один пров, для 100го IP другой)
Но при этом чето не ходит почта не входит и не выходит. С локальной сети тоже не получается подключится, хотя сам сервак почтовый по IP и по DNS пингуется т.е. 100% не пускает файр волл.
Что там прописать что бы работало?

Содержание

Сообщения в этом обсуждении
"Два канала, PF и почта. Не пашет почтовик."
Отправлено reader , 21-Дек-10 13:20 
>[оверквотинг удален]
> pass in on $ext_if1 proto tcp from any to $ext_if1 port ssh
> pass in on $ext_if2 proto tcp from any to $ext_if2 port ssh
> pass in inet proto icmp all icmp-type echoreq
>

> Вообщем раздача инета проходит (для всех один пров, для 100го IP другой)
> Но при этом чето не ходит почта не входит и не выходит.
> С локальной сети тоже не получается подключится, хотя сам сервак почтовый
> по IP и по DNS пингуется т.е. 100% не пускает файр
> волл.
> Что там прописать что бы работало?

через канал на котором шлюз по умолчанию тоже не работает?
попробуйте добавить pass in on $ext_if* для почтовых портов


"Два канала, PF и почта. Не пашет почтовик."
Отправлено leviafanovich , 21-Дек-10 13:28 
>[оверквотинг удален]
>> pass in inet proto icmp all icmp-type echoreq
>>
>> Вообщем раздача инета проходит (для всех один пров, для 100го IP другой)
>> Но при этом чето не ходит почта не входит и не выходит.
>> С локальной сети тоже не получается подключится, хотя сам сервак почтовый
>> по IP и по DNS пингуется т.е. 100% не пускает файр
>> волл.
>> Что там прописать что бы работало?
> через канал на котором шлюз по умолчанию тоже не работает?
> попробуйте добавить pass in on $ext_if* для почтовых портов

и через дефаулт не пашет. кстати в rc.conf в дефаултроут стоит 222.222.222.222

пытался прописать в PF
pass in on $ext_if1 proto tcp from any to any port 25
pass in on $ext_if1 proto tcp from any to any port 143

но не помогло

Вроде бы и блокирующих правил нету, толжно работать и так...может чето с роутами...

хотя опять таки говорю что интернет раздает исправно.


"Два канала, PF и почта. Не пашет почтовик."
Отправлено reader , 21-Дек-10 14:07 
>[оверквотинг удален]
>>> С локальной сети тоже не получается подключится, хотя сам сервак почтовый
>>> по IP и по DNS пингуется т.е. 100% не пускает файр
>>> волл.
>>> Что там прописать что бы работало?
>> через канал на котором шлюз по умолчанию тоже не работает?
>> попробуйте добавить pass in on $ext_if* для почтовых портов
> и через дефаулт не пашет. кстати в rc.conf в дефаултроут стоит 222.222.222.222
> пытался прописать в PF
> pass in on $ext_if1 proto tcp from any to any port 25
> pass in on $ext_if1 proto tcp from any to any port 143

это будет срабатывать если к вам обращаются.

> но не помогло
> Вроде бы и блокирующих правил нету, толжно работать и так...может чето с
> роутами...
> хотя опять таки говорю что интернет раздает исправно.

без прокси?


"Два канала, PF и почта. Не пашет почтовик."
Отправлено guest , 21-Дек-10 13:56 
> Но при этом чето не ходит почта не входит и не выходит.
> С локальной сети тоже не получается подключится, хотя сам сервак почтовый
> по IP и по DNS пингуется т.е. 100% не пускает файр
> волл.
> Что там прописать что бы работало?

Если ссш гуард не забанил релей, то с этим конфигом у вас ничего не режется)))
Я так понимаю, что почта живет на другом сервере?
попробуйте посмотреть что скажет tcpdump при попытке добраться до релея.



"Два канала, PF и почта. Не пашет почтовик."
Отправлено leviafanovich , 21-Дек-10 14:38 
>> Но при этом чето не ходит почта не входит и не выходит.
>> С локальной сети тоже не получается подключится, хотя сам сервак почтовый
>> по IP и по DNS пингуется т.е. 100% не пускает файр
>> волл.
>> Что там прописать что бы работало?
> Если ссш гуард не забанил релей, то с этим конфигом у вас
> ничего не режется)))
> Я так понимаю, что почта живет на другом сервере?
> попробуйте посмотреть что скажет tcpdump при попытке добраться до релея.

почта живет на том же сервере где и PF

вот так настроен PF раньше был, до подключения второго прова

int_if="vr0"
ext_if="rl1"
localnet="192.168.12.0/24"
table <sshguard> persist                                            #создаём таблицу для защиты от брута
set skip on lo0                                                        #пропускаем проверку на петле
set block-policy return                                                #для отброшенных пакетов TCP отсылается пакет TCP RST
scrub in all                                                        #собираем все части пакета перед отправкой

nat on $ext_if from $localnet to any -> ($ext_if)                    ###натим

block in log quick from <sshguard> label "ssh bruteforce"            ###защита от брута
pass in on $int_if from any to any                                     #разрешаем всё из локальной сети
pass out on $ext_if from $ext_if to any                             #разрешаем серверу доступ в интернет
pass in on $ext_if proto tcp from any to $ext_if port ssh            #разрешаем доступ к 22

pass out on $ext_if from $localnet
pass in on $int_if from $localnet
pass out on $ext_if proto tcp from $localnet to any keep state        ###выход в мир для локала
pass out on $ext_if proto udp from $localnet to any keep state        ###выход в мир для локала
pass in inet proto icmp all icmp-type echoreq                        #разрешаем ping



"Два канала, PF и почта. Не пашет почтовик."
Отправлено guest , 21-Дек-10 14:41 
> почта живет на том же сервере где и PF

ну тогда еще покажите netstat -anfinet -ptcp
Вдруг она тупо сдохла, или слушает lo


"Два канала, PF и почта. Не пашет почтовик."
Отправлено leviafanovich , 21-Дек-10 16:15 
>> почта живет на том же сервере где и PF
> ну тогда еще покажите netstat -anfinet -ptcp
> Вдруг она тупо сдохла, или слушает lo

дело в том почему я решил что именно в конфиге файрволла что то.
потому что я с помощью pfctl -f загружаю рабочую и проектируемую конфигу.
Так вот как рабочую загружу в туже секунду почта начинает ходить, только врублю проектируемую сразу вырубается почта но зато раздается 2 инета...

Не знаю что делать даже...

postfix и courier слушают *:25 и *:143


"Два канала, PF и почта. Не пашет почтовик."
Отправлено reader , 21-Дек-10 16:42 
>>> почта живет на том же сервере где и PF
>> ну тогда еще покажите netstat -anfinet -ptcp
>> Вдруг она тупо сдохла, или слушает lo
> дело в том почему я решил что именно в конфиге файрволла что
> то.
> потому что я с помощью pfctl -f загружаю рабочую и проектируемую конфигу.
> Так вот как рабочую загружу в туже секунду почта начинает ходить, только
> врублю проектируемую сразу вырубается почта но зато раздается 2 инета...
> Не знаю что делать даже...
> postfix и courier слушают *:25 и *:143

закоментируйте правила с route-to и проверьте с внешки через канал на который прописан шлюз по умолчанию и из локалки


"Два канала, PF и почта. Не пашет почтовик."
Отправлено leviafanovich , 21-Дек-10 17:26 
каким то образом все заработало, когда прописал правило вида
pass in on { $ext_if1, $ext_if2 } proto tcp from any to { $ext_if1, $ext_if2 }

хотя можно и так

pass in on { $ext_if1, $ext_if2 } proto tcp from any to { $ext_if1, $ext_if2 } port $trustedports
но, пока открою все, на всяк пожарный.

правда как я уже писал выше я пробовал это сделать и раньше, но почему то только сейчас заработало?
Еще не известно как поведет себя сервер после перезагрузки. Это я посмотрю завтра когда буду иметь физ. доступ к серверу, а то мало ли что...