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

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

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

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

    Цитата:
    В чьём конфиге? Это железка какая-то?  

    виртуальная машина на ESX поднята на базе CentOS , на CentOS Squid+iptables....
    Кроме как настроек iptables больше ничего не знаю, что может блокировать поиск сидов  
    пиров видно без проблем.

    Всего записей: 3388 | Зарегистр. 20-05-2006 | Отправлено: 10:05 29-11-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    OOD
    Хорошо, спрошу по другому... Кто ЭТО настраивал? iptables, хоть и ни чего не блокирует, но настроен некорректно в принципе, я уже не говорю про незнамо зачем создана дополнительная цепочка(RH-) в firewall'е.
     
    На сколько мне известно(см. wikipedia.org), за списком sid'ов клиент обращает к torrent tracker'у обычным hhtp запросом. Т.о. если у Вас в iptables не прописано какое-либо правило в PREROUTING цепочке которое заворачивает 80 порт на squid и/или напрямую не указан прокси сервер в torrent-клиенте, то все должно работать. В противном случае общение с трекером у Вас будет происходить через squid и очевидно, что его надо разрешить.

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

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 10:46 29-11-2012
    OOD

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    В в PREROUTING правилах 1 единственное(все что обращается по Https на реал айпи, перебрасывается на локальную машину)

    Код:
     
    -A PREROUTING -d [реал IP] -p tcp --dport 443 -j DNAT --to-destination [locolhost IP]
     

    Других правил в PREROUTING  нет.
     
     
    конфиг iptables брался из гугла в нем присутствовало много таких правил:
     
    # torrent
    -A RH-Firewall1-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1234 -j ACCEPT
    # ftp
    -A RH-Firewall1-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
    #E-Mail  
    -A RH-Firewall1-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
    -A RH-Firewall1-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
    -A RH-Firewall1-1-INPUT -m state --state NEW -m tcp -p tcp --dport 465 -j ACCEPT
    -A RH-Firewall1-1-INPUT -m state --state NEW -m tcp -p tcp --dport 585 -j ACCEPT
    -A RH-Firewall1-1-INPUT -m state --state NEW -m tcp -p tcp --dport 993 -j ACCEPT
    -A RH-Firewall1-1-INPUT -m state --state NEW -m tcp -p tcp --dport 995 -j ACCEPT
     
     
    Изменяю эти правила ничего не происходит пробовал торренты на порт 1234 настроить-ничего не работает...в настройках торрент клиента не указано авторизация на Squide , Nat прописан правилом:
    -A POSTROUTING -s [local-ip-адрес]/32 -o eth1 -j MASQUERADE
    пинг наружу проходит приложения требующие Nat работают, но не все , к примеру не работает 8000 порт и некоторые другие, не пойму что их блокирует где искать?
    На сквиде только эти порты прописаны:
     
    acl    Safe_ports    port    80 81 21 443 563 883 8008 50000 8085 24554 7001 8804 5222
     
     
     
     

    Всего записей: 3388 | Зарегистр. 20-05-2006 | Отправлено: 11:19 29-11-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    OOD
    Цитата:
    брался из гугла
    бездумное копирование редко приносит положительный результат.
     
    Давайте по порядку.
    У вас есть CentOS, который выступает в роли шлюза для некого NAS в вашей локалке. На CentOS как-то настроены Squid и iptables. На NAS должен заработать torrent клиент. Всё так?

    Цитата:
    Изменяю эти правила ничего не происходит
    я Вам уже 2 раза писал и даже подчёркивал, что у Вас в правилах iptables разрешено всё и всем.
    Мб Вы просто не все правила выкатываете? Давайте общаться тогда выводами команд:
    iptables -vnL
    iptables -t nat vnL
    iptables -t mangle -vnL

    Внутренние ip-адреса не надо замазывать, толку ни какого а ситуацию нам разгребать тяжелее, внешние, конечно, стоит. И тогда уже напиши внутренние ip NAS'а и шлюза.

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

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 12:46 29-11-2012
    OOD

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    Всё так!
    Результаты команд:
    iptables -vnL  
    Подробнее...
    iptables -t nat -vnL  
    Подробнее...
    iptables -t mangle -vnL  
    Подробнее...

    Всего записей: 3388 | Зарегистр. 20-05-2006 | Отправлено: 14:34 29-11-2012 | Исправлено: OOD, 14:40 29-11-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    OOD
    Зачем Вы опять замазали локальные адреса?) Ну да ладно...
     
    Во, нашлось правило, которого я ждал. Знал что не может быть все разрешено.
    Цитата:
    1444K 144M REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
    Правило, которое у Вас оказалось после, никогда не сработает.
    Вообще использовать одну и туже цепочку для INPUT и для FORWARD не правильно.
     
    Теперь по поводу протокола BitTorrent — прочтите этот абзац и примените прочтённое к конкретно вашему torrent-клиенту и трекеру.

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

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 15:06 29-11-2012
    OOD

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    т.е. если сделать так:
     
    # torrent
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6881 -j ACCEPT
    -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
    а торрент клиента насильно заставить работать на 6881 порту, то должно заработать, или я не так понял?
    DHT включено было.

    Всего записей: 3388 | Зарегистр. 20-05-2006 | Отправлено: 15:22 29-11-2012 | Исправлено: OOD, 15:22 29-11-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    OOD
    Вас должен инетересовать 6969 порт как я понял. Я сам не использую torrent клиентов и не запрещаю коннект на "левые" порты из локалки.

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

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 15:51 29-11-2012
    OOD

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    Сделал так:
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6969 -j ACCEPT
    -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
     
    торент клиента настроил так:
       
    все равно не работает

    Всего записей: 3388 | Зарегистр. 20-05-2006 | Отправлено: 17:13 29-11-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    OOD
    Входящие Вам побоку, у Вас он всё-равно за NAT'ом и порты Вы не пробрасываете.
     
    Ну тогда tcpdump Вам в руки. А так же можно обнулить счётчики в правилах iptables (iptables -Z FORWARDRH-Firewall-1-INPUT) и следить за тем какие из них меняются при обращении.

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

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 17:25 29-11-2012 | Исправлено: Alukardd, 17:26 29-11-2012
    OOD

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    А подскажите пожалуйста в чем может быть проблема :
    редактирую через vi iptable  
    не всегда применяются правила на определенные порты
    например  
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6969 -j ACCEPT  
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 27015 -j ACCEPT  
    вот второе правило не хочет никак работать...
    перезагрузка iptable не проходит, пока не удаляю вторую строчку...
     
    такое ощущение, что правила для портов должны идти как то по очереди , причем tcp и udp отдельно как то описываться должны, а не в вперемешку...  

    Всего записей: 3388 | Зарегистр. 20-05-2006 | Отправлено: 14:01 30-11-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    OOD
    Очередность абсолютно не важна, точнее именно в порядке очерёдности они и будут применяться.
     
    Я полагаю что меняете вы некий файл и далее применяете его через iptables-restore /path/to/your/file? Эта строка была получена копированием предыдущей и изменением порта?
    Так же хотелось бы увидеть именно ошибку которую Вам выводит 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.

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 14:26 30-11-2012 | Исправлено: Alukardd, 14:28 30-11-2012
    OOD

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    захожу в
    /etc/sysconfig/
    vi iptables
     
    добавляю строки для правил NAT:
    -A POSTROUTING -s [NAS-адрес]/32 -o eth1 -j MASQUERADE
    сохраняю через qw
    service iptables restart
     
    NAT работает без проблем...
    а вот если редактирую какую то строчку с портами -ничего не происходит
    я уже думал что нужно как то по порядку прописывать порты...
     
    ошибка была из-за того что подключался через putty к CentOS, больше не редактирую через Putty средствам Vi и все ок..

    Всего записей: 3388 | Зарегистр. 20-05-2006 | Отправлено: 13:25 02-12-2012 | Исправлено: OOD, 13:27 02-12-2012
    kamadz



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте уважаемые Форумчане. Поскромничал создавать отдельную ветку. Почитал соседние, там настоятельно рекомендовали задавать вопросы в этой. Так что не обессудьте.
     
    Реализована такая схема.
       
     
    Все хорошо, кроме одного - все девайсы нуждаются в настройке прокси вида proxy.domain.ru port 3128
    На практике, это создает значительные сложности для доступа к интернету.
     
    Если пропинговать proxy.domain.ru, получаю адрес ХХХ.ХХХ.ХХХ.ХХХ
    И соотв. порт сохраняется 3128.
     
    На сколько я понимаю - прокси - не прозрачный.
     
    Dlink DIR-620 и прошит DD-WRT. Т.е. есть возможность прописать правила firewall в command shell через команды iptables.
     
    Подскажите пожалуйста - какие команды надо применить чтобы трафик проходил через непрозрачный прокси по адресу ХХХ.ХХХ.ХХХ.ХХХ:3128

    Всего записей: 9 | Зарегистр. 16-08-2007 | Отправлено: 16:01 02-12-2012 | Исправлено: kamadz, 16:02 02-12-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    OOD
    Цитата:
    ошибка была из-за того что подключался через putty к CentOS, больше не редактирую через Putty средствам Vi и все ок..
     
     
    kamadz
    Цитата:
    какие команды надо применить чтобы трафик проходил через непрозрачный прокси
    весь или только http? Если только http, то:
    iptables -t nat -A PREROUTING -p tcp --dport 80 ! -d <WAN_IP>/32 -s <LAN_NET>/<LAN_MASK> -j DNAT --to-destination XXX.XXX.XXX.XXX:3128
    Только вот я совсем не уверен, что proxy настроенный в обычном (не прозрачном режиме) будет корректно обрабатывать запросы отправленные web-сайту "как-будто напрямую".

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

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 16:36 02-12-2012
    kamadz



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Я привык если уж за что-то браться, то доводить до конца - как минимум испробовать ВСЕ варианты.
     
    Уважаемый Alukardd, если я правильно понял, то мне надо написать следующее:
    iptables -t nat -A PREROUTING -p tcp --dport 80 ! -d <WAN_IP>/32 -s <LAN_NET>/<LAN_MASK> -j DNAT --to-destination XXX.XXX.XXX.XXX:3128  
     
       
     
    Если учитывать мои настройки ПК (справа), которые я по сути перенес на роутер (слева), то эта строка должна обрести какой вид?

    Всего записей: 9 | Зарегистр. 16-08-2007 | Отправлено: 17:02 02-12-2012 | Исправлено: kamadz, 17:03 02-12-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    kamadz
    Я думал, что свои адреса Вы и сами подставить в состоянии...
    iptables -t nat -A PREROUTING -p tcp --dport 80 ! -d 192.168.1.1/32 -s 192.168.1.1/24 -j DNAT --to-destination 192.168.81.1:3128

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

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 18:26 02-12-2012
    kamadz



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    Спасибо огромное. Дело в том, что я не являюсь системным администратором и о Линукс знаю только то, что это ОС, которую начал развивать в свое время фин Линус Торвальдс.
    Завтра смогу попробовать. Надеюсь все получится.
     
    Добавлено:
    Alukardd
    Забыл написать, что у меня сам прокси имеет адрес 194.44.198.45:3128
     
    Таким образов правильно ли я понимаю строка должна выглядеть так
    iptables -t nat -A PREROUTING -p tcp --dport 80 ! -d 192.168.1.1/32 -s 192.168.1.1/24 -j DNAT --to-destination 194.44.198.45:3128
     
    ?
     
    И, если можно, поинтерессуюсь у глубоко уважаемого Гуру - будет ли эта строка работать в условиях НЕ прозрачного прокси (логин и пароль не требуется, клонирование МАС адреса тоже)?

    Всего записей: 9 | Зарегистр. 16-08-2007 | Отправлено: 18:33 02-12-2012
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    kamadz
    Да, тогда так.
    Вот я об этом и писал, что не уверен, что будет работать. Я не углублялся в то как именно прокси сервер обрабатывает трафик приходящий к нему по доброй воле и путём "заворота". Вроде разница не существенно, вроде доп. http заголовков X-Forwarded-For.

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

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 18:48 02-12-2012
    kamadz



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

    Цитата:
    Да, тогда так.  

    Спасибо, завтра попробую.

    Всего записей: 9 | Зарегистр. 16-08-2007 | Отправлено: 18:58 02-12-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 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