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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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

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

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)

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



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    urodliv
    Спасибо.
    Но сия конструкция находиться не близко. Так что разбить на подзадачи смогу только на выходных.  
    А пока имеем то, что имеем (удаленка)...
     
    Добавлено:
    Хотя...
     
    Добавлено:
    Сделал так:

    Код:
     
    iptables -t nat -A PREROUTING -p TCP --dport 20:21 -j DNAT --to 192.168.0.105:20-21
    iptables -t filter -A FORWARD -d 192.168.0.105 -p TCP --dport 20:21 -j ACCEPT
    iptables -t nat -A PREROUTING -p TCP --dport 10000:10500 -j DNAT --to-destination 192.168.0.105:10000-10500
    iptables -t filter -A FORWARD -p TCP --dport 10000:10500 -m state --state ESTABLISHED,RELATED -j ACCEPT
     

     
    И ломанулся через VPN на 0.70: благополучно попал на VPN.  
    "Проблеме" действительно в модеме.
     
    Там мы, так же, имеем iptables. М.б. есть варианты?

    Всего записей: 214 | Зарегистр. 18-05-2009 | Отправлено: 13:25 15-08-2012 | Исправлено: Small_green_yojik, 16:15 15-08-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Small_green_yojik
    Цитата:
    Там мы, так же, имеем iptables.
    эм... У вас туда root доступ?.. FTP корректно работает с правилом RELATED только при соответсвующем модуле ядра. Кстати как я понял достаточно 21 порта в таком случае, т.к. 20 он тоже умеет определять как RELATED.
     
     
    Кстати, народ не могу найти саму суть, как устроены RELATED соединения? Нашёл что вроде они как бы инициируются из ESTEBLISHED, но как это так?) Т.е. есть механизм который шлёт SYN пакет с уже используемого порта и при этом просить ответить на другой? И всё это дело conntrack как-то отслеживат?
    Ткните пожалуйста где об этом подробно написано, в RFC на TCP не заметил.

    ----------
    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.

    Всего записей: 6490 | Зарегистр. 28-08-2008 | Отправлено: 20:42 15-08-2012
    Small_green_yojik



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    urodliv
    Удалось проверить первую часть задачи. При текущих настройках нат (модем) на .1.2 (FTP server) из вне пускает отлично.
    Только в паре модем > шлюз возникают проблемы.
     
    Alukardd
    Да. Рутовый. Но сеть желательно оставить в том виде в котором она сейчас. Тем более форвард "впрямую" на FTP форвАдится.

    Всего записей: 214 | Зарегистр. 18-05-2009 | Отправлено: 21:31 15-08-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Small_green_yojik
    nat за nat'ом это само по себе тяжело, а для FTP это вообще головная боль. Более того акивнй режим на сколько я понимаю еще более к этому чувствителен, попробуйте перевести FTP-сервер в пассиный режим.

    ----------
    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.

    Всего записей: 6490 | Зарегистр. 28-08-2008 | Отправлено: 21:36 15-08-2012
    Small_green_yojik



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    Сервер ("вертится" FileZilla - настройки пассив/актив на выбор там не видел), сам по себе, умеет как активный, так и пассивный.
    Все зависит от клиента. На данный момент пытаюсь из браузера "подвеситься" (т.е. пассивный). Но толку, пока, мало...
     
    Добавлено:
    Причем до сервера проброс работает: свой ip на сервере вижу.
    Но обратно: "could not send reply, disconnected".

    Всего записей: 214 | Зарегистр. 18-05-2009 | Отправлено: 22:07 15-08-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Small_green_yojik
    оО И давно это у нас режим ftp зависит от клиента?

    ----------
    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.

    Всего записей: 6490 | Зарегистр. 28-08-2008 | Отправлено: 22:14 15-08-2012
    Small_green_yojik



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
     
    Поддержка пассивного режима
    Пассивный режим FTP часто применяется в наши дни для доступа к серверу из-за файрволла на стороне клиента. Режим доступа определяется клиентом, сервер же может либо поддерживать оба режима (и активный, и пассивный), либо позволять работать только в одном из них.

     
    Источник
     
    Добавлено:
    Т.е. клиент и сервер должны "договориться". Но в случае с FileZilla, если я, конечно, ничего не путаю. Актив/пассив определяется именно клиентом.

    Всего записей: 214 | Зарегистр. 18-05-2009 | Отправлено: 22:55 15-08-2012 | Исправлено: Small_green_yojik, 22:56 15-08-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Small_green_yojik
    Похоже на косяк в моих знаниях на счёт ftp. Дибильный протокол и я всю жизнь от него бегаю и нахожу чем пользоваться кроме него.
     
    Как ни крути я не понимаю как у Вас при таких правилах iptables что-то работало даже по отдельности. Правила в цепочке FORWARD должны описывать хождение пакетов в обе стороны, а не только по пути установления соединения.

    ----------
    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.

    Всего записей: 6490 | Зарегистр. 28-08-2008 | Отправлено: 23:10 15-08-2012
    urodliv



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

    Цитата:
    Как ни крути я не понимаю как у Вас при таких правилах iptables что-то работало даже по отдельности.

    Тама есть правило:

    Код:
    #Оба офиса друг другу любые пакеты
    iptables -A FORWARD -p ALL -j ACCEPT  

    Вот оно и разрешает "обратный ход" и отменяет политику запрета на форвард пакетов

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

    Всего записей: 6572 | Зарегистр. 29-04-2009 | Отправлено: 23:16 15-08-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    urodliv
    Понятно) Не заметил.
     
    я спать)

    ----------
    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.

    Всего записей: 6490 | Зарегистр. 28-08-2008 | Отправлено: 23:18 15-08-2012
    Small_green_yojik



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

    Код:
    iptables -t nat -A POSTROUTING -o $INET -j SNAT --to-source $INETIP

    Я думаю поспособствовало. По крайней мере RDP с аналогичными правилами работает.  
     
    В iptables я нуб. Соприкасаюсь, пока, с сим добром крайне редко.

    Всего записей: 214 | Зарегистр. 18-05-2009 | Отправлено: 23:19 15-08-2012
    Valery12

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    и так вспомним что такое активный режим, клиент создает соединение с рандомного порта (выше 1024) на 21 порт сервера и в поле данных пакета передает привет, имя пароль и рандомный  порт на котором он ждет подключения со стороны сервера, после чего сервер это соединение и устанавливает с 20 порта. Соответственно никакими правилами уровня L3 на фаерволе этого не сделать - нужна инспекция протокола FTP (как это делает cisco, isa, kerio и другие)
    фаервол получая пакет от локального компьютера адресованный хосту в интернете на порт 21 извлекает из него данные, а именно команды FTP, узнает порт на который ожидает подключение клиент и динамически открывает его у себя.
    При пассивном режиме наоборот сервер сообщает клиенту рандомный порт на котором он ждет передачи данных, соответственно правила на фаерволе можно сделать и без инспекции, но очень "некрасивые" - клиенту нужно разрешить порты 21 + 1024-65535
     
    Если за натом находится не клиент а сервер то без инспекции:
    для активного режима нужно маппить на него 21 порт и разрешить ему подключения с 20 порта к любому хосту на порты 1024-65535
    а для пассивного маппить на него порты 21 + 1024-65535 что вообще недопустимо
    хотя конечно в настройках самого сервера FTP этот диапазон (1024-65535) можно урезать в соответствии с ожидаемой нагрузкой.

    Всего записей: 2325 | Зарегистр. 21-07-2003 | Отправлено: 23:47 15-08-2012 | Исправлено: Valery12, 09:29 16-08-2012
    Small_green_yojik



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Нашел вот такую штуку.
    Подозрения сходные. Но продвижение нулевое.
     
    Добавлено:
    Спасибо всем откликнувшимся!!!

    Оказалось: сам дурак. Маршрутов на FTP сервере не хватало (когда по VPN обращался, подсеть была та же). Сделал дефолтным маршрутом 0.70, сервер ответил.

    Всего записей: 214 | Зарегистр. 18-05-2009 | Отправлено: 13:04 16-08-2012 | Исправлено: Small_green_yojik, 13:51 16-08-2012
    urodliv



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

    Цитата:
    выкладываю содержимое
    файла rc.firewall в 6 фото
     

    А почему не выложить всё это шедеврическое творение одним текстовым файлом?
    И вопрос не в тему: а подчёркивали вы фломастером прямо на мониторе?
     

    Цитата:
     
    что сделал - добавил переменную
    ovpnport="1194" (фото 1)
    скопировал правила rdp (фото 5, фото 6)
    заменил rdpport на ovpnport
     
    должно заработать?

    По идее - да.

    Цитата:
     
    у меня не заработало, но я забыл заменить tcp на udp, а проверить сейчас не могу, т.к. удаленный доступ к прокси так и не на строил.  

    А в настройках openvpn-сервера указано udp?

    Цитата:
     
    а какой прогой можно наверняка проверить открытость порта от точки до точки? а то вдруг у меня уже всё работает и осталась проблема в настройках самой ОпенВПН?

    telnet

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

    Всего записей: 6572 | Зарегистр. 29-04-2009 | Отправлено: 13:29 02-09-2012 | Исправлено: urodliv, 14:03 02-09-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    urodliv
    telnet не работает с udp. Тогда уж надо юзать netcat или уже nmap.
     
    p.s. а кому хоть отвечали-то?)
    Так бы и написали, что отвечали т. LookingBal на его вопрос.

    ----------
    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.

    Всего записей: 6490 | Зарегистр. 28-08-2008 | Отправлено: 13:47 02-09-2012
    LookingBal



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго времени суток!
    Поставил IPFire. все работает, но не могу настроить проброс rdp-порта, я так понимаю у меня не прописан переход с сетевой 192.168.1.2 на 192.168.0.1
    Т.к. в модеме (192.168.1.1) проброс на 192.168.1.2 прописал, в файерволе IPFire проброс на терминальный сервер 1С (192.168.0.55) прописал. При этом если я во внутренней сети подключаюсь по rdp к 192.168.1.2, то он пробрасывает на терминальный сервер 1С. А из внешки, когда обращаюсь на внешний IP проброса на терминальный сервер 1С не происходит.
    Подскажите, пожалуйста, как прописать маршрут между двумя подсетями?

    Всего записей: 71 | Зарегистр. 22-11-2007 | Отправлено: 14:26 11-09-2012
    urodliv



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    LookingBal
    Я так и не понял, кто у вас за кем стоит и кем погоняет. Схему подключения нарисуйте.

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

    Всего записей: 6572 | Зарегистр. 29-04-2009 | Отправлено: 19:00 11-09-2012
    kerevra



    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    приветствую, уважаемые! прошу помочь разобраться в какой-то хрени, до которой не догоняю
     
    есть виртуалка с поднятым в ней "debian6-роутером".
    на роутере 3 интерфейса:
    eth_ext - инет
    eth_int - локалка
    eth_vm - сеть между виртуалками и хостом
    ifconfig: Подробнее...
     
    также на роутере поднят pptpd.
     
    так вот, проблема следующая - работает все, что нужно, за исключением форвардинга между pptp-клиентами, а также с роутрера нет доступа к сервисам клиентов
    при подключении клиентов выполняется скрипт: Подробнее...
     
    iptables -nvL: Подробнее...
     
    iptables -nvL -t nat: Подробнее...
     
    в чем может быть затык?

    ----------
    Если софт полезен, его надо дорабатывать, а если бесполезен - надо писать к нему маны

    Всего записей: 1192 | Зарегистр. 25-11-2009 | Отправлено: 12:46 19-09-2012 | Исправлено: kerevra, 12:50 19-09-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    kerevra
    Скрипт который выполняется, я вообще не очень понимаю как он работает... Откуда он берёт переменные-то? И почему где-то используются переменные которые присваивают, а где-то в которые??? И вообще зачем это действие происходит?
     
    И теперь самый главный вопрос... Почему нельзя написать общее правило для всех ppp клиентов?
    Одно из правил — iptables -A FORWARD -s 192.168.0.1/24 -i eth_vm -d 192.168.150.0/24 -j ACCEPT
     
    p.s. Если хотите показать адреса, то вместо вывода ifconfig намного приятнее читать ip -4 a s

    ----------
    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.

    Всего записей: 6490 | Зарегистр. 28-08-2008 | Отправлено: 20:06 19-09-2012 | Исправлено: Alukardd, 20:08 19-09-2012
    kerevra



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

    Цитата:
    Скрипт который выполняется, я вообще не очень понимаю как он работает... Откуда он берёт переменные-то? И почему где-то используются переменные которые присваивают, а где-то в которые???
    переменные PPP_IFACE и PPP_REMOTE создает pptpd и закидывает туда ip и название инетрфейса, а IF_PPTP и IP_PPTP появились из копипаста скрипта. лежат скрипты в /etc/ppp/ip-up.d и /etc/ppp/ip-down.d (отличаются только назначением - добавление или удаление правил) и запускаются автоматом при подключении и отключении клиента соответственно. вопрос не в том, отрабатывают скрипты или нет, вопрос в том что при подключении клиента создается правило разрешающее форвардинг пакетов, но оно не работает
     
    Добавлено:

    Цитата:
    И теперь самый главный вопрос... Почему нельзя написать общее правило для всех ppp клиентов?  
     Одно из правил — iptables -A FORWARD -s 192.168.0.1/24 -i eth_vm -d 192.168.150.0/24 -j ACCEPT
    да можно, просто сначала не хотел всем клиентам разрешать все и было вместо "-d 192.168.150.0/24" что-то вроде "-d 192.168.150.100/32". подправил, так и оставил. но это же большого значения не имеет, не так ли?
     

    Цитата:
    p.s. Если хотите показать адреса, то вместо вывода ifconfig намного приятнее читать ip -4 a s
    за это спасибо, не знал
     
     
    Добавлено:
    P.S.: при изменении -P FORWARD на ACCEPT положение не меняется

    ----------
    Если софт полезен, его надо дорабатывать, а если бесполезен - надо писать к нему маны

    Всего записей: 1192 | Зарегистр. 25-11-2009 | Отправлено: 20:26 19-09-2012 | Исправлено: kerevra, 20:33 19-09-2012
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 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

    Компьютерный форум 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-2023

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru