Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Firewall *nix: iptables, ipfw, pf etc...

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Открыть новую тему     Написать ответ в эту тему

Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iptables
   
Linux

 
  • настройка iptables (крупные статьи переехали на wikibooks)
  • настройка iptables (opennet)
  • Easy Firewall Generator for IPTables Online
  • l7-filter - дополнения для netfilter, позволяющее создавать правила основываясь на данных прикладного уровня.
  • ipset - модуль для ядра Linux к фаерволу netfilter для создания и управления наборами адресов, портов, связок ip+mac.
     
  • схема прохождения пакета через netfilter (или более сложно и подробно)
     
    Так же может быть интересным
  • Перевод руководства по iproute2 и управлению трафиком в Linux (оригинал LARTC) -- внимательно читать оглавление - тема содержит уйму всего!!!
  • Введение в управление трафиком, дисциплины обработки очередей (теория) (opennet) - aka Повесть о Linux и управлении трафиком.
  • QoS в Linux - iproute2 и u32 селектор (хабр)
  • QoS в Linux - iproute2, издеваемся над трафиком (хабр)
     


    ipfw
       
    FreeBSD

  • русский MAN (opennet)
  • настройка ipfw (opennet)
  • настройка ipfw (lissyara)
     
    Достаточно частый вопрос
  • Балансировка и резервирование канала (samag.ru)
     


    pf
       
    OpenBSD

  • начальная настройка pf (lissyara)
  • настройка pf как шлюза (lissyara)

  • Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 23:50 19-08-2010 | Исправлено: Alukardd, 11:42 20-05-2022
    urodliv



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    DJs3000
    Ну почитайте же хоть что-нибудь. Поиграть всегда успеете.

    ----------
    Очень скоро еда станет совершенно безвкусной, и тогда этот недостаток придётся компенсировать хорошо развитым воображением.

    Всего записей: 6684 | Зарегистр. 29-04-2009 | Отправлено: 17:41 23-06-2011
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Вопрос
     
    usertum
    Правило PREROUTING у вас в порядке (если с адресами не напутали)
    Назначение POSTROUTING мне вообще не понять?!
    FARWARD не понятно надо вам прописывать или нет.
     
    И так - нормальным человеческим языком описываем задачу. Приводим полные правила, ну или хотя бы те что могут повлиять на работоспособность... В общем если тайн нету, то выводы iptables -vnL и iptables -t nat -vnL в студию! (лучше обернуть морем)

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 18:43 13-07-2011 | Исправлено: Alukardd, 18:44 13-07-2011
    usertum



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Шас сервер не рядом, конфиг с виртуалки
     
     
    *nat
    :OUTPUT ACCEPT [0:0]
    :PREROUTING ACCEPT [0:0]
    :POSTROUTING ACCEPT [0:0]
    -A POSTROUTING -p tcp -m tcp --dport 3389 -j SNAT --to-source 192.168.0.50
    -A PREROUTING -p tcp -m tcp --dport 3389 -j DNAT --to-destination 10.0.0.1:3389
    COMMIT
    *mangle
    :PREROUTING ACCEPT [13:1532]
    :INPUT ACCEPT [11:1412]
    :FORWARD ACCEPT [2:120]
    :OUTPUT ACCEPT [13:5647]
    :POSTROUTING ACCEPT [15:5767]
    COMMIT
    *filter
    :INPUT ACCEPT [11:1412]
    :FORWARD ACCEPT [2:120]
    :OUTPUT ACCEPT [13:5647]
    COMMIT
     
    При этом при таком подключении на сервер в логах как IP клиента идет 192.168.0.50 а хотелось бы определять реальный IP. А если POSTROUTING убрать то не будет работать, по этому он и тут.

    Всего записей: 471 | Зарегистр. 01-07-2008 | Отправлено: 18:51 13-07-2011 | Исправлено: usertum, 06:29 14-07-2011
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    usertum
    Отключите смайлы при отправке этого сообщения...
    -A POSTROUTING -p tcp -m tcp --dport 3389 -j SNAT --to-source 192.168.0.50 - что это за странное правило? Вам нужно сделать самый обыкновенный SNAT всего трафика, если это шлюз, или от конкретной машины, если нет. Данный сервер должен являться шлюзом по умолчанию для windows сервера на который вы пытаетесь пробить port forwarding.
    Вы хотите сказать эта схема работает?
     
    1 - я не понимаю почему эта схема работает...
    2 - IP у вас светится не тот именно из-за этого SNAT правила...
     
    Я вас уже попросил опишите словами что где стоит и откуда куда попасть. Вы городите какие-то нелепые правила, не зная ни только iptables, но и основ маршрутизации!!!

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 22:48 13-07-2011 | Исправлено: Alukardd, 22:52 13-07-2011
    usertum



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Они работают и это главное, даже без указания шлюза на Windows. Вопрос с IP только. Зачем мне весь трафик переключать на тот сервер? Нужно попасть на RDP и OpenVPN сервера которые расположены за этим сервером. У этого есть белый IP и он смотрит на прямую в интернет. Сервер на CentOS 5.6 который смотрит в инет.

    Всего записей: 471 | Зарегистр. 01-07-2008 | Отправлено: 06:26 14-07-2011 | Исправлено: usertum, 07:36 14-07-2011
    urodliv



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Вы городите какие-то нелепые правила, не зная ни только iptables, но и основ маршрутизации!!!


    Цитата:
    Они работают и это главное

    "И ни один из четверых не остановился и не спросил себя; «Откуда взялся спасительный корм?»
    Им было все равно — они ели, и этого с них было довольно." (с)

    ----------
    Очень скоро еда станет совершенно безвкусной, и тогда этот недостаток придётся компенсировать хорошо развитым воображением.

    Всего записей: 6684 | Зарегистр. 29-04-2009 | Отправлено: 09:04 14-07-2011
    usertum



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Я не дискуссий прошу а помощи, если что то не так то поправьте.

    Всего записей: 471 | Зарегистр. 01-07-2008 | Отправлено: 10:20 14-07-2011
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    urodliv

     
    usertum
    Теперь моя понять как это работает)
    И так... Как я уже, если вы хотите получить то, что хотите - т.е. подключение к внутреннему серверу и при этом виденье внешних ip, то
    1 - удаляете ваше правило SNAT
    2 - пишите следующее iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source x.y.z.w , где eth1 - внешний интерфейс, а x.y.z.w ваш вешний ip.
    3 - прописываете на windows сервере в качестве основного шлюза настроенный Linux сервер.
     
    А вообще по хорошему надо заблочить остальной трафик, а то дырявый у вас шлюз получается... Но это мы сделаем по вашему желанию после того, как будет работать основная задача.

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 14:02 14-07-2011
    usertum



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd не работает (

    Всего записей: 471 | Зарегистр. 01-07-2008 | Отправлено: 16:28 14-07-2011
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    usertum
    Что у вас там может не работать?
    Вы с номерами интерфейсов и ip-адресами ни чего не напутали? На win серваке свой CentOS шлюз указали как шлюз по умолчанию?
     
    Добавлено:
    Если на ваш взгляд всё настроено верно, тогда:
    1 - выполняете iptables -Z && iptables -t nat -Z
    2 - пробуете подключится с внешней машины на виндовый сервак. (обратите внимание, что подключаться стоит именно из вне, а не изнутри по внешнему ip. Это просто методы предосторожности, в каких-то ситуациях я напоролся на то, что при попытке коннекта изнутри по внешним адресам идут косяки...)
    3 - давайте вывод iptables -t nat -VNL и iptables -vnL. - На этот раз результаты команды iptables-save меня не устроят. Нужен именно вывод указанных команд!!!

    ----------
    Microsoft gives you windows, linuх gives you the whole house...
    I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

    Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 17:42 14-07-2011
    Negoros

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго времени суток.  
     Есть роутер с фряхой и локалка, интернет. Файерволл настроен на резание трафика определенным айпишникам. Однако, требуется двум локальным машинам разрешить только пяток определенных сайтов типа maps.yandex.ru и никуда более.  
     В rc.firewall прописал table1 вида  
       
     ${fwcmd} table 1 add ip локальный  
       
     и table 2  
       
     ${fwcmd} table 2 add www.maps.yandex.ru  
       
     Что дальше делать не знаю, помогите чайнику)))

    Всего записей: 6 | Зарегистр. 27-07-2011 | Отправлено: 16:59 27-07-2011
    Boris_Popov



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Что дальше делать не знаю, помогите чайнику

    Обратиться к вашему системному администратору.

    Всего записей: 479 | Зарегистр. 27-09-2003 | Отправлено: 16:49 28-07-2011 | Исправлено: Boris_Popov, 16:50 28-07-2011
    Negoros

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Boris_Popov

    Цитата:
    Обратиться к вашему системному администратору.

     
    А я и есть системный администратор, ага. Только дело с freeBSD не имел никогда. Роутер с фряхой достался от прежнего админа. Пока железо или ось не загнется - пусть работает, загнется- поставлю аппаратный или виндовый роутер.
    Я спросил, как мне кажеться, простой вопрос как разрешить айпишникам из таблицы 1 заходить на строго определенный сайт из таблицы 2. Какие команды, синтаксис.  
    Если это сложно или лень отвечать - не пишите, пожалуйста, ничего. Изучать линукс для одного действия - нет мотивации, вряд ли столкнусь с ним далее.
     
    PS. Без обид, но заметил, что если сравнивать сообщество линукс и виндовс, то первое более маргинальное, отписки типа обратись к админу, кури ман - типичное явление.
     
     

    Всего записей: 6 | Зарегистр. 27-07-2011 | Отправлено: 17:15 28-07-2011
    ASE_DAG



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Negoros
    > дело с freeBSD не имел никогда.
    > изучать линукс для одного действия - нет мотивации
    Вы там определитесь для начала, какая у вас там система-то, хорошо.

    ----------
    Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

    Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 17:23 28-07-2011 | Исправлено: ASE_DAG, 17:23 28-07-2011
    Negoros

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ASE_DAG
     
    FreeBSD 8.1-RELEASE (GW) #2: Wed Aug 11 11:22:53 SAMST 2010
     
     
     
    Добавлено:
    пока сделал следующее
     
    ${fwcmd} add pass tcp from table1 to table2 $ports2 setup
    ${fwcmd} add pass tcp from table1 to table2  setup
    ${fwcmd} add pass tcp from table1 to any $ports1 setup
     
    но походу не работает)))
     

    Всего записей: 6 | Зарегистр. 27-07-2011 | Отправлено: 17:48 28-07-2011
    ASE_DAG



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Negoros
    > FreeBSD
    Ну и каком Линуксе шла речь? ;-)
     
    > как мне кажеться, простой вопрос как разрешить айпишникам из таблицы 1 заходить на строго определенный сайт из таблицы 2.  
    > Какие команды, синтаксис.  
    ${FWCMD} add allow tcp from 'table(1)' to 'table(2)' via rl0
    , например.
     
    Но помимо этого надо, наверное, еще и запретить им куда-либо ходить. А как это сделать, зависит от того, что у вас там на настоящий момент сконфигурено.
    Может быть, будет уместным что-то такое:
    ${FWCMD} add deny log tcp from 'table(1)' to not 192.168.1.0/24 via rl0


    ----------
    Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

    Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 18:14 28-07-2011
    Negoros

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ASE_DAG
    Спасибо, буду пробовать.
     
    Еще вопрос. В таблице сайты запрещенные или разрешенные корректно указывать в виде IP, или система поймет вид www.? Хотя непонятно, если домен имеет большой пул адресов, она сможет по имени домена их все закрыть?

    Всего записей: 6 | Зарегистр. 27-07-2011 | Отправлено: 11:12 29-07-2011
    ASE_DAG



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Negoros
    Как источник, так и пункт назначения можно указываться в виде доменных имен. Тогда один раз (при чтении правил) эти имена будут разрезолвены прямым запросом, и далее файрволл будет оперировать адресами.
    Как ведет себя ipfw, если имя резолвится в несколько адресов, я, честно говоря, не знаю; возможно, что берет только первое (хотя, например, iptables создает правила на все) — вам это проще проверить.
     
    А вообще имейте в виду, что блокировать по доменным именам конкретные сайты во всемирной сети пакетным фильтром — не лучшая идея, Сквиз тут подойдет много лучше.
    Но если все-таки будете так, то убедитесь, что у вас дээнэс-клиент стартует раньше, чем применяются правила фильтра.

    ----------
    Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

    Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 19:20 29-07-2011 | Исправлено: ASE_DAG, 19:23 29-07-2011
    Boris_Popov



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    А вообще имейте в виду, что блокировать по доменным именам конкретные сайты во всемирной сети пакетным фильтром — не лучшая идея, Сквиз тут подойдет много лучше.

    +1. Только его еще под фрей поставить нужно и сконфигурировать...
     
    Дальше сорри за офтоп:
    Negoros, сорри за резкость. Так и нужно было написать - «чайник во фре». КМК, вам проще будет поставить виндовый сервак и поднять на нем тот же WinRoute, чем поднимать сквида с нуля под фрей.
    Другое дело, если сквид уже стоит - тогда задача решается быстро с помощью ACL.
     
    ASE_DAG
    Угу, поправил. Negoros заразил

    Всего записей: 479 | Зарегистр. 27-09-2003 | Отправлено: 18:02 01-08-2011 | Исправлено: Boris_Popov, 16:52 02-08-2011
    ASE_DAG



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Boris_Popov
    > чайник в линуксе
    Каком еще, блин, Линуксе?

    ----------
    Dmitry Alexandrov <321942@gmail.com> [PGP] [BTC]

    Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 19:45 01-08-2011
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

    Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Firewall *nix: iptables, ipfw, pf etc...


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru