Страница 1 из 1

FreeBSD и клиент Сбербанка (ФПСУ-ИП)

Добавлено: 2012-11-09 9:04:43
nops
Собственно проблема такая.
Есть 2 бухгалтера, который работают с этим самым злощастным клиентом.
До этого стоял RedHat и вроде работало, но в один прекрасный момент грохнулось и сейчас я юзаю FreeBSD.
Итак.
Есть у меня связка ipfw+pf. Не спращивайте почему такое извращение, ну вот так получилось.
В общем pf служит у меня исключительно как nat и проброс портов, выглядит примерно так:
et limit states 128000
set optimization aggressive

### temp ###
#rdr on rl0 proto { tcp, udp } from any to 111.111.111.111 port 11122 -> 192.168.0.240 port 22
nat pass on rl0 from 192.168.0.0/24 to any -> rl0
тут 111.111.111.111 - внешний IP сервака, 192.168.0.0/24 внутренняя подсеть, rl0 - внешний интерфейс сервака.
в ipfw составлены правила типа такого:
#!/bin/sh
f=/sbin/ipfw
LanOut="rl0"
LanIN="rl1"
buh1="192.168.0.235"
buh2="192.168.0.223"

${f} -f flush

${f} add 100 check-state

### VPN ###
${f} add 150 allow gre from any to any

### BUHI ###
#${f} add 180 allow ip from ${buh1} to any 1239
#${f} add 181 allow ip from ${buh1} to any 87
${f} add 181 allow ip from ${buh1} to any setup keep-state
${f} add 182 allow ip from any to ${buh1}

### Allow from Local ###
${f} add 200 allow ip from any to any via lo0
${f} add 210 deny ip from any to 127.0.0.0/8
${f} add 220 deny ip from 127.0.0.0/8 to any

### Block private network ###
#${f} add 300 deny ip from any to 10.0.0.0/8 in via ${LanOut}
#${f} add 310 deny ip from any to 172.16.0.0/12 in via ${LanOut}
#${f} add 320 deny ip from any to 192.168.0.0/16 in via ${LanOut}
#${f} add 330 deny ip from any to 0.0.0.0/8 in via ${LanOut}
#${f} add 340 deny ip from any to 169.254.0.0/16 in via ${LanOut}

### Block ICMP frag ###
${f} add 360 deny icmp from any to any frag

### Allow any established ##
${f} add 2000 allow tcp from any to any established

### Allow from me ###
${f} add 2100 allow ip from me to any

### Allow from DNS ###
${f} add 3000 allow udp from any 53 to any
${f} add 3010 allow udp from any to any 53

### Allow from NTP ###
${f} add 3100 allow udp from any to any 123

### Allow from FTP for me ###
${f} add 3200 allow tcp from any to any 21

### Allow from ICMP ###
${f} add 3300 allow icmp from any to any icmptypes 0,8,11

### Allow from WWW ###
${f} add 3400 allow tcp from any to any 80
${f} add 3410 allow tcp from any to any 443

### Allow from ssh ###
${f} add 3500 allow tcp from any to any 22

### Allow from Mail - SMTP, IMAP ###
${f} add 3600 allow tcp from any to any 25
${f} add 3600 allow tcp from any to any 143
${f} add 3600 allow tcp from any to any 993

### Allow form VPN ###
${f} add 3810 allow tcp from any to me 1723

### Allow Local Network to Internet ###
${f} add 10000 allow ip from 192.168.0.0/24 to any
${f} add 10010 allow ip from any to 192.168.0.0/24

### Deny from All ###
${f} add 32940 deny ip from any to any
вот суть такая. Стоит мне сделать правило: ipfw add 1 allow ip from any to any
То все сразу работает, но это косяк, сервак открыт всему и вся.
пробовал прописать
ipfw add allow ip from any to 192.168.0.235
ipfw add allow ip from 192.168.0.235 to any
Не работает.

Подскажите, где что и чем я запрещаю подобное?
Заранее благодарен.

Re: FreeBSD и клиент Сбербанка (ФПСУ-ИП)

Добавлено: 2012-11-10 12:25:59
nops
Неужели на лисяре нет людей, кто может подсказать как решить мою проблему?:(

Re: FreeBSD и клиент Сбербанка (ФПСУ-ИП)

Добавлено: 2012-11-10 21:01:42
Dark_ASU
попробуй разрешить всем к тебе allow ip from any to me Есть подозрение что он хочет установить соединение с своей стороны, а оно рубается. Что бы не бало косяка с всех открытым на вход позвони в банк и узнай порты по которым он ходит.

Re: FreeBSD и клиент Сбербанка (ФПСУ-ИП)

Добавлено: 2012-11-10 22:33:05
nops
Спс. ну я думал об этом, но allow ip from any to me не что иное, как полный доступ к серверу, что не айс.
Но с другой стороны, сбербанк сказали мне порты, которые использует софт, вот я и подумал, что разрешить может эти порты конектится ко мне?!
Я просто немного не понял.
allow from any to any мы разрешаем все и вся.
если allow ip from 192.168.0.0/24 to any + allow ip from any to any established
То мы даем разрешение юзать инет и входящий трафик для установленных уже соединений. Почему же в этом слечае не работает клиент-банк, когда стоит разрешение allow from any to 192.168.0.235 (это комп бухгалтера)
я думал о том, чтобы разрешить всем конектится на сервак, но \то же не правильно, к тому же, я разрешил всем и всему возвращаться к бухгалтеру. Или все таки пакет, предназначенный для клиент-банка ломится именно на сервак и тогда конечно же отсутсвия allow from any to me блокирует доступ и теряется пакет.
Помогите пожалуйста, я не настолько глубоко знаю и понимаю фаервол или просто не могу сообразить.

Заранее спасибо.
P.S. а вот allow from any to me я попробую в понедельник же и сразу отпишусь;)

Re: FreeBSD и клиент Сбербанка (ФПСУ-ИП)

Добавлено: 2012-11-12 7:24:38
nops
Всем спасибо. Пролбему решил таким образом(опишу только требуемые правила из ipfw)

Код: Выделить всё

#!/bin/sh
f=/sbin/ipfw

buh1="192.168.0.235"
buh2="192.168.0.223"

..................................

### BUHI###
${f} add 180 allow ip from any 1239,87 to me
${f} add 181 allow ip from ${buh1} to any
${f} add 182 allow ip from any to ${buh1}
${f} add 183 allow ip from ${buh2} to any
${f} add 184 allow ip from any to ${buh2}

..................................

${f} add 9900 deny ip from 192.168.0.0/24 to any 1239,87
${f} add 9910 deny ip from any 1239,87 to 192.168.0.0/24

..................................

${f} add 32940 deny ip from any to any
При таком раскладе, юзать эти порты разрешено только бухам и никому более. можно вместо any было прописать IP-адрес сервера, он у меня есть, но я так подумал, пускай будет any.
Итак. 2-м бухам дан доступ для работы клиент-банка(IP-адреса бухов вверху в самом), всем остальным юзать нельзя.

Можно еще придумать такие вариации:

Код: Выделить всё

${f} add 180 allow ip from any 1239,87 to me
${f} add 181 allow ip from ${buh1} to any 1239,87
${f} add 182 allow ip from any 1239,87 to ${buh1}
${f} add 183 allow ip from ${buh2} to any 1239,87
${f} add 184 allow ip from any 1239,87 to ${buh2}
Или

Код: Выделить всё

${f} add 180 allow ip from any 1239,87 to me
${f} add 181 allow ip from ${buh1} to 111.111.111.111
${f} add 182 allow ip from 111.111.111.111 to ${buh1}
${f} add 183 allow ip from ${buh2} to 111.111.111.111
${f} add 184 allow ip from 111.111.111.111 to ${buh2}
или

Код: Выделить всё

${f} add 180 allow ip from any 1239,87 to me
${f} add 181 allow ip from ${buh1} to 111.111.111.111 1239,87
${f} add 182 allow ip from 111.111.111.111 1239,87 to ${buh1}
${f} add 183 allow ip from ${buh2} to 111.111.111.111 1239,87
${f} add 184 allow ip from 111.111.111.111 1239,87 to ${buh2}