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

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



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый день, коллеги!
    долго мучаюсь с вопросом пробросов портов через squid. В инете много тем и мануалов, но по своему вопросу ни чего не нашел.
    Ситуация следующая: есть сеть 192.168.0.0/16, есть сервер с установленным Debian GNU/Linux 7.8 (wheezy), SAMS 2.0.0-rc2, SQUID3 3.1.20-2.2+deb7u2, SAMBA 2:3.6.6-6+deb7u5. авторизация по NTLM все работает. понадобилось пробросить порт, и вот тут случился коллапс.
    задача пробросить порты 8080 на 195.2.82.50.
    Пробовал максарадингом - не получается. сетевой интерфейс один, eth0 192.168.0.195 255.255.255.0 192.168.0.1 в инет выходит через маршрутизатор 192.168.0.254 В инете много мануалов по настройке iptables с двумя сетевыми интерфейсами, а вот про один ни сказано ни слово. Выручайте коллеги. Буду благодарен за любую помощь.

    Код:
    iptables-save
    iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    iptables -A INPUT -m multiport --dports 8080 -s 192.168.0.14-j ACCEPT
    iptables -A FORWARD -s 192.168.0.14 -d 195.2.82.50 -p tcp --dport 8080 -j ACCEPT
    telnet с сервера

    Код:
    telnet 195.2.82.50 8080
    Trying 195.2.82.50...
    Connected to 195.2.82.50.
    acl в Squid3:

    Код:
    acl SSL_ports port 8080
    acl Safe_ports port 8080
    http_access deny all !Safe_ports
    http_access allow CONNECT SSL_ports FTP

    Всего записей: 62 | Зарегистр. 22-10-2014 | Отправлено: 13:45 24-04-2015
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Renua
    А позвольте узнать какой вообще NAT вы пытаетесь тут описать когда у вас одна подсеть? Что во что должно транслироваться?
     
    Как в этой схеме задействован 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 | Отправлено: 18:57 24-04-2015
    Renua



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    Мне необходимо с адреса 192.168.0.x по порту 9000 передавать данные в инет на 195.2.82.50:9000. сеть имеет сл. вид
    <PC>--<SWITCH>--<PROXY>--<ROUTE>--<ШБ(КОНТИНЕНТ)>--<Inet>--<195.2.82.50:9000>
    на роутере и ШБ порт открыт, не пропускает только прокся.  
    мониторинг сетевых подключений выдает что 9000 порт ESTABLISHED, но это появилось после того как было прописано на проксе  

    Код:
    -A PREROUTING -s 192.168.0.0/16 -p tcp -m tcp --dport 9000 -j REDIRECT --to-ports 3128
    -A PREROUTING -s 192.168.0.0/16 -p tcp -m tcp --dport 3128 -j REDIRECT --to-ports 9000
    -A POSTROUTING -o eth0 -j MASQUERADE

     
     
    Добавлено:
    вот вывод всей таблицы:

    Код:
    # Generated by iptables-save v1.4.14 on Mon Apr 27 10:20:18 2015
    *nat
    REROUTING ACCEPT [400:48889]
    :INPUT ACCEPT [402:48985]
    UTPUT ACCEPT [197:12522]
    OSTROUTING ACCEPT [1:60]
    -A PREROUTING -s 192.168.0.0/16 -p tcp -m tcp --dport 9000 -j REDIRECT --to-ports 3128
    -A POSTROUTING -o eth0 -j MASQUERADE
    COMMIT
    # Completed on Mon Apr 27 10:20:18 2015
    # Generated by iptables-save v1.4.14 on Mon Apr 27 10:20:18 2015
    *filter
    :INPUT ACCEPT [5338:578516]
    :FORWARD ACCEPT [0:0]
    UTPUT ACCEPT [1522:335264]
    COMMIT
    # Completed on Mon Apr 27 10:20:18 2015

    вот конфиг сквида

    Код:
    acl SSL_ports port 443 9000 200
    acl Safe_ports port 9000
    acl CONNECT method CONNECT
    http_access deny all !Safe_ports !FTP
    http_access allow CONNECT SSL_ports FTP
    http_port 192.168.0.195:3128

     

    Всего записей: 62 | Зарегистр. 22-10-2014 | Отправлено: 10:00 27-04-2015 | Исправлено: Renua, 12:16 27-04-2015
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Renua
    Цитата:
     -A PREROUTING -s 192.168.0.0/16 -p tcp -m tcp --dport 3128 -j REDIRECT --to-ports 9000
    это лишнее
    Цитата:
     -A POSTROUTING -o eth0 -j MASQUERADE  
    это тоже непонятно какую роль должно выполнять.
     
    Вы просто хотите перенаправить соединение или именно воспользовать proxy-сервером? Это две весьма большие разницы.
     
    Без squid'а всё выливается в 2 команды:
    iptables -t nat -A PREROUTING -s 192.168.0.0/16 -p tcp -m tcp --dport 9000 -j DNAT --to-destination 195.2.82.50:8080
    iptables -t nat -A POSTROUTING -d 195.2.82.50 -p tcp -m tcp --dport 8080  -o eth0 -j SNAT --to-source 192.168.0.195

    ----------
    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:29 27-04-2015
    Renua



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

    Всего записей: 62 | Зарегистр. 22-10-2014 | Отправлено: 13:04 27-04-2015
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Renua
    какой принцип? Есть понятие маршрутизация  и NAT, ну и всё что нужно для осознания этих понятий. На этом вся теория заканчивается.
    Дальше есть знание синтаксиса 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:57 27-04-2015
    vlary



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Renua
    Цитата:
    при условии что этот порт надо будет просто открыть в инет
    "Просто открыть" делается с помощью INPUT ACCEPT. Но если этот порт никто не слушает,
    то никакого результата это не даст.
    А если имеется в виду проброс определенного порта (ака виртуальный сервер)  
    снаружи во внутрь, то это достигается с помощью второго примера, написанного Alukardd
    Ну и опять же, присоединяюсь к его мнению:
     

    ----------
    Заслуженный SCOтовод, почетный SUNтехник и любитель Кошек

    Всего записей: 17282 | Зарегистр. 13-06-2007 | Отправлено: 16:46 27-04-2015 | Исправлено: vlary, 16:50 27-04-2015
    angelofdarkness8



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Приветствую. Поселилась в голове идея, и никак её оттуда не выгнать: хочу видеть красивую статистику работы iptables. Что-то подобное есть в zentyal (всякие графики и наглядный список текущих правил), но zentyal мне не нужен. Есть похожее в webmin, но тоже не то. В общем, есть ли вообще веб-морда для iptables или гуевый клиент под винду? Поиск юзал, везде был, кругом печаль... Помогите)

    Всего записей: 67 | Зарегистр. 30-03-2012 | Отправлено: 10:23 13-05-2015
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    angelofdarkness8
    Ну вообще-то что бы рисовать графики нужно постоянно снимать какую-то статистику, значит нужны соответствующие пакеты мониторинга.
    Текущее состояние и правила вполне наглядно отражаются в выводах iptables -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.

    Всего записей: 6571 | Зарегистр. 28-08-2008 | Отправлено: 11:09 13-05-2015
    angelofdarkness8



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

    Всего записей: 67 | Зарегистр. 30-03-2012 | Отправлено: 11:50 13-05-2015
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    angelofdarkness8
    iptables имеет счётчики байтов и пакетов на каждое правило. Используйте дальше что угодно — nagios. zabbix и т.д.

    ----------
    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 | Отправлено: 11:52 13-05-2015
    Renua



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый день, коллеги.
    если не затруднит в помощи, поясните дураку...

    Код:
    iptables -t nat -A PREROUTING -s 192.168.0.0/16 -p tcp -m tcp --dport 80 -j DNAT --to-destination 46.28.17.145:80
    iptables -t nat -A POSTROUTING -d 46.28.17.145 -p tcp -m tcp --dport 80 -o eth0 -j SNAT --to-source 192.168.100.177
    пытался открыть порт, по образцу, но почему не сработало
     
    Добавлено:
    Нужно чтоб из 192.168.0.0/16 ходило на 46.28.17.145 по портам 80 и 7707.... что то все равно не получается

    Всего записей: 62 | Зарегистр. 22-10-2014 | Отправлено: 13:08 13-05-2015
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Renua
    Ну единственное отличие, которые я вижу от моего примера это IP адрес на который вы source'ите. Проверьте наличие адреса 192.168.100.177 на интерфейсе eth0 той машины, что NAT'ит.
     
    А вообще для простоты Вы можете использовать вместо -j SNAT --to-source 192.168.100.177-j MASQUERADE

    ----------
    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:55 13-05-2015
    Renua



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    т.е.
    Код:
    iptables -t nat -A POSTROUTING -d 46.28.17.145 -p tcp -m tcp --dport 80 -o eth0 -j MASQUERADE
    я правильно вас понимаю?
    это и есть та самая машина.
     
    Добавлено:

    Цитата:
    Alukardd

    а первую строку можно не указывать?

    Код:
    iptables -t nat -A PREROUTING -s 192.168.0.0/16 -p tcp -m tcp --dport 80 -j DNAT --to-destination 46.28.17.145:80

    Всего записей: 62 | Зарегистр. 22-10-2014 | Отправлено: 16:24 13-05-2015
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Renua
    С маскарадом, да, всё так.
    Правило DNAT'а всё равно надо.

    ----------
    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:45 13-05-2015 | Исправлено: Alukardd, 16:45 13-05-2015
    Renua



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

    Всего записей: 62 | Зарегистр. 22-10-2014 | Отправлено: 16:55 13-05-2015
    OOD

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Можно ли с помощью iptables бороться со спамерами баном по IP их хостов?

    Всего записей: 3391 | Зарегистр. 20-05-2006 | Отправлено: 12:43 19-05-2015
    ipmanyak



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    OOD
    Цитата:
    Можно ли с помощью iptables бороться со спамерами баном по IP их хостов?
    Можно, но не нужно.
    Ибо хостов море. Запаришься вносить хосты, таблица будет огромной, айпитаблес начнет тормозить.
    Если уж очень хочется и у тебя точно нет  писем, например,  с Японии, Китая,  Италии и др, то можно побрить их блоки сетей, В Инете есть эти списки.  
     
    Для борьбы со спамом есть средства в почтовиках , причем на уровне DNS
     -  DNS-BL
     -  требовать PTR  
     - брить хосты, которые в HELO/EHLO пишут типа    
     pppoe*-*
     ppp
     adsl-...
     dynamic-
     и так далее . Ибо нормальные почтовики таких имен не имеют в HELO  
     
    Не на уровне DNS
     - Greylisting
     - Tarpit
     - Spamassasin


    ----------
    В сортире лучше быть юзером, чем админом...

    Всего записей: 11985 | Зарегистр. 10-12-2003 | Отправлено: 15:23 19-05-2015 | Исправлено: ipmanyak, 15:23 19-05-2015
    Alukardd



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    OOD
    Если нужно работать с большими списками ip адресов, то есть ipset.

    ----------
    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:50 19-05-2015
    OOD

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alukardd
    в etc/host.deny прописываю туда правила , не блокирует -это ipset , или что то еще?  
    CentOS 6.

    Всего записей: 3391 | Зарегистр. 20-05-2006 | Отправлено: 09:07 20-05-2015
    Открыть новую тему     Написать ответ в эту тему

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