![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
В честь 26 годовщины 26 апреля уволился с текущей работы и таки наконец начал проект http://wiki.freebsd.org/IpfwNg — хотя на работе FreeBSD и была основной системой, реальную возможность пилить ядро я так и не получил (хотя тот же NAT64 нам бы понадобился не через полгода, так через год). В ближайшие недели посижу дома и надеюсь сделать хотя бы скелет, который можно будет потом уже в свободное время потихоньку пилить — работы по проекту предстоит очень много.
Желающие обсудить по делу — велкам в каменты (хотя я туда еще не все наброски оформил).
Желающие обсудить по делу — велкам в каменты (хотя я туда еще не все наброски оформил).
no subject
Date: 2012-05-18 01:51 pm (UTC)у функциональных языков обычно синтаксис несколько отличный от процедурных и отражает их идеологию.
т.е. я не говорю, что синтаксис весь нафиг другой должен быть (ну как в примере к nftables -- мне не нравится), но должно быть явное выделение блоков правил, которые проверяются одновременно и как они разделяются всякими divert/netgraph (или вообще просто разделяются, если я хочу вначале влепить permit any any), к примеру.
no subject
Date: 2012-05-28 11:05 pm (UTC)> (ну как в примере к nftables -- мне не нравится)
Кстати, расскажи чем. Оно C-style а-ля Juniper-like или nginx-like, что уже есть шаг вперед от традиционных файрволов. Если первый блин комом, ошибки-то можно и учесть.
> или вообще просто разделяются, если я хочу вначале влепить permit any any
Я либо этот синтаксис не понимаю, либо какой смысл лепить в начало разрешение всего всем, оно ж остальные правила отменит.
Собсно, ты, я так понимаю, спец по цискам. Меня интересует, какой там packet flow в плане имениея нескольких аклей сразу, и т.п., ну по типу как я для ipfw в свое время рисовал. Поскольку multiple rulesets в ipfw изначально цискофилы и хотели.
no subject
Date: 2012-05-29 05:42 am (UTC)а, ок. я просто хотел сказать что это момент важный и он может иметь не только косметическое значение.
у меня возникает ощущение, что я программирую. а я не хочу программировать файрвол, я его хочу конфигурировать. но это так, скорее вкусовщина, хотя в случае ipfw (номера строк! бэйсик! фу!)/pf именно она и роялит. в nftables злоупотребление фигурными скобками. из скриптов конфиг будет неудобно менять. когда правило бьется на несколько строк -- трудно грепом искать. из командной строки поправить на лету одно правило -- тоже тяжело и неудобно.
в джунипере, кстати, вообще мозг выносят -- конфиг у тебя задается в одном стиле (а-ля cisco+dlink) а выводят -- в другом, со скобочками.
это слишком большой прыжок в сторону
в этом и суть -- временная отмена всех/части правил не стирая оных. и не сбрасывая статистики по ним. применяют при отладке, когда например не понятно -- то ли приложение дурит, то ли файрвол, то ли ты что-то перепутал -- отключим файрвол и посмотрим будет ли вообще работать.
либо я твоего вопроса не понял, либо ты плохо сформулировал. но что я помню о хотенияих а-ля циско было стремеление к следующему (освременненая ситиуация с откидыванием исторических, устаревших вариантов):
есть именованные наборы правил, ака aclи. у них, кстати, можно посмотреть счетчики, построчно.
есть конфигурация интерфейса, в которой описывается его параметры. среди прочих параметров есть два относящихся к вопросу: acl для входящих пакетов и acl для исходящих пакетов (имена). причем для каждого протокола задается отдельно.
транзитный пакет сначала получает по лбу in acl на входящем интерфейсе, потом out acl на исходящем.
почему хотели: удобно написать acl, например, для входящих пакетов с офиса (много строк), а потом по одной строке указывая просто его имя приенять на интерфейсе. тоже самое для пакетов с интернета. дополнительно указываем ограничивающие правила для dmz.
с нетграфом это у тебя получится само, иначе сделать трудно.
но это ты не видел просьб о несколько более другой технологии, перенесенной на роутеры с pix/asa:
у нас есть несколько зон (inside, dmz, outside). у зон есть уровень безопасности (0 совсем плохо, интернет; 100 -- локалка, 50 -- dmz). есть преконфигуренное поведение[*]: из зоны с большим уровнем безопасности можно без ограничений идти в меньшую. при этом образуется state для получения ответов, разумеется. наоборот -- запрещено. интерфейсу назначается принадлежность к какой-либо зоне. после этого файрвол (как устройство) готово функционировать, конфигурация очень лаконична и покрывает 95% потребностей. оставшиеся 5% исключений описываются дополнительными правилами, типа из outside на dmz host A можно ходить на порт 80. из inside на dmz port 23 ходить нельзя. и т.п. таких правил достаточно мало, поскольку умолчание [*] очень разумно.
ну еще у кошкастых есть несколько особенностей, которые наверное не имеет смысла реализовывать:
пакет, сформированный на роутере под acl не попадает вообще.
пакет, адресованный процессору роутера (не путать просто с фабрикой на каталистах, к примеру) попадает под еще один acl. ну и т.п.
no subject
Date: 2012-05-29 06:43 am (UTC)no subject
Date: 2012-05-29 07:23 am (UTC)ну и это -- такое поведение не интуитивно, надо изучать документацию.
спасибо, что не надо сдавать экзамен на право допуска к консоли.
претензии не понял.
no subject
Date: 2012-05-29 08:45 am (UTC)no subject
Date: 2012-05-29 11:34 am (UTC)cisco де-факто стала законодателем моды и стандартов.
следовательно все, кто отличаются -- находятся в несколько более неудобном положении.
no subject
Date: 2012-05-29 12:08 pm (UTC)Ну вспомните, как вставить правило в середину ACL, угу.
>cisco де-факто стала законодателем моды и стандартов.
Ну да, конечно. А Windows стал законодателем моды и стандартов в компьютерном мире, так давайте сделаем новый файервол с окошечками и менюшечками.
no subject
Date: 2012-05-29 12:21 pm (UTC)а что?
не файрвол, а офис. а так все верно. ну и эта, победила не ibm cua, а ms ui (забыл как у них называется)
no subject
Date: 2012-05-29 12:43 pm (UTC)no subject
Date: 2012-05-29 01:18 pm (UTC)больше 10 лет назад
да.
не возбуждайся. перечитай еще раз. не путай теплое с мягким.