IPFW
Модератор: terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- рядовой
- Сообщения: 13
- Зарегистрирован: 2009-09-25 10:01:28
Re: IPFW and PPPoE
Проблема заключается в следующем: Настроил файрвол чтобы все запросы к интернет поступали на SQUID. Сквид настроил по типу http://www.lissyara.su/?id=1026
Только я к интернет подключаюсь через PPPoE (как мне правильно настроить файрвол - rc.conf и squid - squid.conf ? что указывать в качестве внешнего интерфейса и адреса? tun0 или реальную сетевую плату, которая условно смотрит в интернет. и ip указывать, который сам прописал, или внешний ip, который дает DHCP провайдера. ?
У меня пока ни так ни так не получилось...
Где копать? облазил кучу форумов.
Только я к интернет подключаюсь через PPPoE (как мне правильно настроить файрвол - rc.conf и squid - squid.conf ? что указывать в качестве внешнего интерфейса и адреса? tun0 или реальную сетевую плату, которая условно смотрит в интернет. и ip указывать, который сам прописал, или внешний ip, который дает DHCP провайдера. ?
У меня пока ни так ни так не получилось...
Где копать? облазил кучу форумов.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- xelplogoog
- мл. сержант
- Сообщения: 134
- Зарегистрирован: 2010-01-02 12:14:56
-
- рядовой
- Сообщения: 13
- Зарегистрирован: 2009-09-25 10:01:28
Re: IPFW
Т.е. допустим, в фаейрволе я указываю в качестве внешнего ip - ip, который я сам выбрал, а не тот по которому я виден в интернет?xelplogoog писал(а):в фаерволе tun0 в сквиде ниче вроде не надо
Код: Выделить всё
FwCMD="/sbin/ipfw" # собственно где лежит бинарник ipfw
LanOut="rl0" # внешний интерфейс
LanIn="ale0" # внутренний интерфейс
IpOut="192.168.9.96" # внешний IP адрес машины (адрес который я прописал в rc.conf, а не тот который дает мне провайдер)
IpIn="200.0.0.96" # внутренний IP машины
NetMask="24" # маска сети
Код: Выделить всё
vnbserver# ps -ax | grep squid
25520 p0 D+ 0:00.00 grep squid
Код: Выделить всё
chown -R squid:wheel /var/log/squid/
- xelplogoog
- мл. сержант
- Сообщения: 134
- Зарегистрирован: 2010-01-02 12:14:56
Re: IPFW
в прафилах фаервола внешний фейс надо писать tun0 если у тя PPPoE, а не название сетевухи, которая в модем подключена
по сквиду, наверна, в другую тему
если коротко, то юзера создавать не надо. а файлы логов я вроде создавал
запускать нада /usr/local/etc/rc.d/squid start. там он и ошибку выдаст, если не захочет стартовать. по ней уже и смареть нада че не так
смареть запущен ли - /usr/local/etc/rc.d/squid status, а не ps (мне лично так сподручнее)
по сквиду, наверна, в другую тему
если коротко, то юзера создавать не надо. а файлы логов я вроде создавал
запускать нада /usr/local/etc/rc.d/squid start. там он и ошибку выдаст, если не захочет стартовать. по ней уже и смареть нада че не так
смареть запущен ли - /usr/local/etc/rc.d/squid status, а не ps (мне лично так сподручнее)
/usr/ports/x11/yakuake-kde4 user
-
- рядовой
- Сообщения: 13
- Зарегистрирован: 2009-09-25 10:01:28
Re: IPFW
СПАСИБО! в фаерволом разобрался. Указал внешний фейс как tun0. Проблема теперь только в том, что прозрачный прокси не получается...xelplogoog писал(а):в прафилах фаервола внешний фейс надо писать tun0 если у тя PPPoE, а не название сетевухи, которая в модем подключена
по сквиду, наверна, в другую тему
если коротко, то юзера создавать не надо. а файлы логов я вроде создавал
запускать нада /usr/local/etc/rc.d/squid start. там он и ошибку выдаст, если не захочет стартовать. по ней уже и смареть нада че не так
смареть запущен ли - /usr/local/etc/rc.d/squid status, а не ps (мне лично так сподручнее)
Хоть и пишу в squid.conf как полагается
# порт прозрачного прокси
http_port 3129 transparent
А в фаерволе правило:
# отправляем всех на squid (в данном случае - прокси прозрачный)
${FwCMD} add fwd 127.0.0.1,3129 tcp from ${NetIn}/${NetMask} to any 80 via ${LanOut}
где:
LanOut="tun0" # внешний интерфейс
LanIn="ale0" # внутренний интерфейс
IpOut="192.168.9.95" # внешний IP адрес машины
IpIn="200.0.0.96" # внутренний IP машины
NetMask="24" # маска сети
Но прозрачный прокси все равно не получается.
В access.log идут сообщения типа:
1268412066.880 0 200.0.0.59 TCP_DENIED/400 1405 NONE NONE:// - NONE/- text/html
1268412066.880 0 200.0.0.59 TCP_DENIED/400 1405 NONE NONE:// - NONE/- text/html
Хотя внутренний IP 200.0.0.59 стоит в списке пользователей, у которых полный доступ к интернет. (в squid.conf)
# пользователи с полными парвами на доступ в инет
acl inet_full src "/usr/local/etc/squid/inet_full"
А если указывать в браузере адрес прокси и порт, хоть даже 3129. То все работает отлично. Трафик считается в access.log .
-
- проходил мимо
Re: IPFW
а когда сквид собирал, указал опцию ipfw ? может в этом косяк?
-
- рядовой
- Сообщения: 13
- Зарегистрирован: 2009-09-25 10:01:28
Re: IPFW
У меня получился прозрачный прокси!
Не стал мучиться со сложными правилами фаера, как был описан в статье. В фаервол по умолчанию (rc.firewall) просто добавил пару правил.
Вот что получилось.
где 200.0.0.ХХ - IP интерфейса смотрящего во внутреннюю сеть.
Теперь буду просто постепенно добавлять разрешения и запреты. И смотреть что получиться.
Не стал мучиться со сложными правилами фаера, как был описан в статье. В фаервол по умолчанию (rc.firewall) просто добавил пару правил.
Вот что получилось.
Код: Выделить всё
server# ipfw list
00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00300 deny ip from 127.0.0.0/8 to any
00400 fwd 200.0.0.ХХ,3129 ip from any to any dst-port 80,3128,8080 recv ale0
00500 fwd 200.0.0.ХХ,3129 ip from any to any dst-port 80,3128,8080 recv tun0
65535 allow ip from any to any
Теперь буду просто постепенно добавлять разрешения и запреты. И смотреть что получиться.
Последний раз редактировалось MuJLaN 2010-03-17 9:49:14, всего редактировалось 2 раза.
- Hunta
- сержант
- Сообщения: 164
- Зарегистрирован: 2008-12-03 20:47:35
- Откуда: Калининград
- Контактная информация:
Re: IPFW
Помогите пожалуйста, не могу настроить проброс RDP.
Хочу сделать соединение из вне но на не стандартном порту, к примеру 3590, к машине во внутренней сети.
Т.е. чтоб из инета подключение шло по 3590, а во внутреннюю сеть уже приходило на стандартный 3389. Вроде перенаправляется с 3590 на внутренний IP 3389, а дальше тишина....
В логах следующее:
Помогите пожалуйста, что делаю не так?
Заранее спасибо.
Хочу сделать соединение из вне но на не стандартном порту, к примеру 3590, к машине во внутренней сети.
Т.е. чтоб из инета подключение шло по 3590, а во внутреннюю сеть уже приходило на стандартный 3389. Вроде перенаправляется с 3590 на внутренний IP 3389, а дальше тишина....
Код: Выделить всё
...
${fwcmd} add divert tcp from any to any in via ${wan}
${fwcmd} add fwd 192.168.0.1,3389 tcp from any to any 3590 in via ${wan}
${fwcmd} add fwd 192.168.0.1,3389 udp from any to any 3590 in via ${wan}
${fwcmd} add allow from 192.168.0.1 to any in via ${lan} # Это правило уже поставил от безисходности
...
${fwcmd} add divert tcp from any to any out via ${wan}
${fwcmd} add allow tcp from 192.168.0.1 to any out via ${wan}
${fwcmd} add allow udp from 192.168.0.1 to any out via ${wan}
...
Код: Выделить всё
... netserver kernel: ipfw 2000 Forward to 192.168.0.1:3389 TCP X.Y.Z.F:17478 192.168.1.2:3590 in via ed0
Заранее спасибо.
Дураков нет, есть инакомыслящие...
-
- проходил мимо
Re: IPFW
а отчего могут правила из фаервола пропадать время от времени? не все, тока некоторые.
ну, т.е. у меня есть набор правил, но иногда отваливается инет. смотрю в фаервол - не хватает 2-3 правил. перегружаю скрипт - все возвращается
ну, т.е. у меня есть набор правил, но иногда отваливается инет. смотрю в фаервол - не хватает 2-3 правил. перегружаю скрипт - все возвращается
- Hunta
- сержант
- Сообщения: 164
- Зарегистрирован: 2008-12-03 20:47:35
- Откуда: Калининград
- Контактная информация:
-
- проходил мимо
Re: IPFW
ты уверен, что проброс порта это проблема фаервола, а не ната?
- xelplogoog
- мл. сержант
- Сообщения: 134
- Зарегистрирован: 2010-01-02 12:14:56
Re: IPFW
помогите разобраться
у меня есть правила с keep-state и они работают (-d показывает установленные соединения)
но у меня в первом правиле add 100 check-state всегда светит 0. это так и должно быть?
у меня есть правила с keep-state и они работают (-d показывает установленные соединения)
но у меня в первом правиле add 100 check-state всегда светит 0. это так и должно быть?
/usr/ports/x11/yakuake-kde4 user
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: IPFW
Да.xelplogoog писал(а):помогите разобраться
у меня есть правила с keep-state и они работают (-d показывает установленные соединения)
но у меня в первом правиле add 100 check-state всегда светит 0. это так и должно быть?
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
- xelplogoog
- мл. сержант
- Сообщения: 134
- Зарегистрирован: 2010-01-02 12:14:56
Re: IPFW
есть еще проблема
ночью пропадали нетокорые правила и утром не было интрнета, приходилось перегружать правила
надоело, подумал, что их криво написал, и переписал с нуля и полностью по-другому
старый файл удалил и исправил запись в rc.conf
сегодня утром проверяю - новых правил нет вообще, загружены старые, которые я удалил вместе с файлом.
откуда он их нашел и почему ночью перегружаются правила фаервола, если комп не перезагружался? куда копать?
ночью пропадали нетокорые правила и утром не было интрнета, приходилось перегружать правила
надоело, подумал, что их криво написал, и переписал с нуля и полностью по-другому
старый файл удалил и исправил запись в rc.conf
сегодня утром проверяю - новых правил нет вообще, загружены старые, которые я удалил вместе с файлом.
откуда он их нашел и почему ночью перегружаются правила фаервола, если комп не перезагружался? куда копать?
/usr/ports/x11/yakuake-kde4 user
- xelplogoog
- мл. сержант
- Сообщения: 134
- Зарегистрирован: 2010-01-02 12:14:56
Re: IPFW
и еще вопрос в догонку
почему на последнем правиле счетчик != 0 если предыдущее правило идентичное, только с логом?
Код: Выделить всё
55000 5723 733912 deny log logamount 50 ip from any to any
65535 3880 514950 deny ip from any to any
/usr/ports/x11/yakuake-kde4 user
- xelplogoog
- мл. сержант
- Сообщения: 134
- Зарегистрирован: 2010-01-02 12:14:56
Re: IPFW
знач, старые правила появлялись каждую ночь из-за того, что копия файла с ними была найдена мной в /etc/periodic/daily
пытаюсь понять, как он там оказался
пытаюсь понять, как он там оказался
/usr/ports/x11/yakuake-kde4 user
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: IPFW
Потому что в момент перезагрузки правил, остаётся только одно - 65535.xelplogoog писал(а):и еще вопрос в догонкупочему на последнем правиле счетчик != 0 если предыдущее правило идентичное, только с логом?Код: Выделить всё
55000 5723 733912 deny log logamount 50 ip from any to any 65535 3880 514950 deny ip from any to any
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
- xelplogoog
- мл. сержант
- Сообщения: 134
- Зарегистрирован: 2010-01-02 12:14:56
- kvasik
- рядовой
- Сообщения: 12
- Зарегистрирован: 2010-01-27 17:56:22
Re: IPFW
Попробуй методом natd, добавляя опции в /etc/natd.conf, например:Hunta писал(а):Помогите пожалуйста, не могу настроить проброс RDP...
redirect_port tcp 192.168.0.55:3389 3389
и в rc.conf добавить
natd_flags="-f /etc/natd.conf"
У меня тоже назрел вопрос. В чем принципиальное отличие форвардинга в natd и ipfw, где можно произвести те же настройки, внеся изменения в /etc/rc.firewall, например:
${ipfw} add fwd <протокол> from <откуда> to <куда> <дополнительные_условия>. Кроме того, что последний будет работать только с включенной опцией IPFIREWALL_FORWARD в ядре?
- nops
- мл. сержант
- Сообщения: 85
- Зарегистрирован: 2010-01-30 21:58:51
- Контактная информация:
Re: IPFW
а я вот так делаю ipfw+pf
Код: Выделить всё
rdr pass on re0 proto { tcp, udp } from any to 1.1.1.1 port 12345 \ -> 192.168.0.2 port 80
nat pass on re0 from 192.168.0.2 port 80 to any -> re0
-
- проходил мимо
Re: IPFW
Доброго времени суток.
Заранее извиняюсь, если не в ту тему пишу.
Прошу помоч разобраться с проблемой:
Есть:
2 машины с FreeBSD 8.0 RELEASE - 192.168.4.1 (роутер-router.mydomain.ru) и 192.168.4.2(DNS-сервер и почтарь-mx.mydomain.ru на базе Postfix+Dovecot)
1 внешний адрес от провайдера приходящий на роутер.
Через нат(192.168.4.1) прокинуты порты 25, 110, 143 на почтарь(192.168.4.2)
Все казалось бы настроено и вроде даже работает, но есть загвоздка. Пользователи внутри сети не могут принимать/отправлять почту со своих почтовых клиентов (The Bat), если в клиенте в качестве smtp и imap серверов указано имя хоста почтового сервера (mx.mydomain.ru), а не внутренний адрес почтаря (192.168.4.2). Если указать адрес почтаря, то все прекрасно работает, из чего я сделал вывод, что запросы блокируются файрволом при попытке из внутренней сети обратиться на внешний адрес, чтобы снова попасть во внутреннюю сеть.
Ничего умнее в голову не пришло кроме как нарулить форвард через ipfw (ipfw add 10 fwd 192.168.4.2 from 192.168.4.0/24 to mx.mydomain.ru in via nfe0(интерфейс, смотрящий в локальную сеть)), но к сожалению ничего не получилось. Правило срабатывает, но телнетом зайти на почтарь по прежнему не получается. В вопросах почты я дилетант, так что не судите слишком строго
Если есть какие-нибудь мысли по этому вопросу, с готовностью выслушаю
Заранее извиняюсь, если не в ту тему пишу.
Прошу помоч разобраться с проблемой:
Есть:
2 машины с FreeBSD 8.0 RELEASE - 192.168.4.1 (роутер-router.mydomain.ru) и 192.168.4.2(DNS-сервер и почтарь-mx.mydomain.ru на базе Postfix+Dovecot)
1 внешний адрес от провайдера приходящий на роутер.
Через нат(192.168.4.1) прокинуты порты 25, 110, 143 на почтарь(192.168.4.2)
Все казалось бы настроено и вроде даже работает, но есть загвоздка. Пользователи внутри сети не могут принимать/отправлять почту со своих почтовых клиентов (The Bat), если в клиенте в качестве smtp и imap серверов указано имя хоста почтового сервера (mx.mydomain.ru), а не внутренний адрес почтаря (192.168.4.2). Если указать адрес почтаря, то все прекрасно работает, из чего я сделал вывод, что запросы блокируются файрволом при попытке из внутренней сети обратиться на внешний адрес, чтобы снова попасть во внутреннюю сеть.
Ничего умнее в голову не пришло кроме как нарулить форвард через ipfw (ipfw add 10 fwd 192.168.4.2 from 192.168.4.0/24 to mx.mydomain.ru in via nfe0(интерфейс, смотрящий в локальную сеть)), но к сожалению ничего не получилось. Правило срабатывает, но телнетом зайти на почтарь по прежнему не получается. В вопросах почты я дилетант, так что не судите слишком строго
Если есть какие-нибудь мысли по этому вопросу, с готовностью выслушаю
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: IPFW
1. Можно на всех компах прописать в файле hosts соответствие:
2. Поднять свой внутренний или кэширующий DNS, в котором сделать аналогично hosts для своей сети.
и т.д.
Код: Выделить всё
192.168.4.2 mx.mydomain.ru
и т.д.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- проходил мимо
Re: IPFW
1. Можно, но это крайняя мера на мой взгляд
2. Я пробовал на 192.168.4.2, который является ДНС-сервером для всей подсети, указать в /etc/hosts 192.168.4.2 mx.mydomain.ru, но так тоже не заработало =(
или я неправильно понял второй вариант ?
2. Я пробовал на 192.168.4.2, который является ДНС-сервером для всей подсети, указать в /etc/hosts 192.168.4.2 mx.mydomain.ru, но так тоже не заработало =(
или я неправильно понял второй вариант ?
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: IPFW
Ваш DNS сервер должен отдавать вашей сети на запрос mx.mydomain.ru IP-Адрес 192.168.4.2.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- проходил мимо
Re: IPFW
Понял, спасибо за совет.
Этого я и боялся =( ДНС настривал не я, он мне в нагрузку достался, видимо пришло время разбираться и с ним.
Этого я и боялся =( ДНС настривал не я, он мне в нагрузку достался, видимо пришло время разбираться и с ним.