Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: HOWTO: Iptables для новичков  (Прочитано 526602 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #975 : 27 Ноября 2010, 13:42:24 »
Спасибо что откликнулись AnrDaemon
По поводу примеров использования conntrack в голове каша такая же как и с established,related- уже установленные соединения, меня это вводит в ступор, да я вижу как используется там правило но это не помогает его понять.

:) conntrack используется именно для того, для чего предназначен - для установление факта отношения каждого отдельного пакета к тому или иному открытому соединению. И, конечно, для установления состояния этого соединения. NEW - запрос на соединение, ESTABLISHED - соединение в процессе работы, RELATED - пакет относится к соединению (попытке соединения), но по сути не является его частью (ICMP ответ на попытку установки TCP соединения, подтверждение запроса на подключение, ...), INVALID - комбинация аттрибутов пакета в лучшем случае бессмысленна, DNAT - пакет был подвергнут динамической маршрутизации, ну и т.д.

Цитировать
Цитировать
Определись уже, INPUT или FORWARD. От этого зависит ответ.
Я о том что это единственное разрешающее правило там, помимо открытия одиночного порта для клиента
Такая попытка по меньшей мере странная :)
Если это открытый шлюз, conntrack использовать для разрешения как-то бессмысленно. Скорее, это должно быть единственное запрещающее правило.
Если это брандмауэр с натом - тогда одним правилом тут не отделаешься.

Цитировать
вот правила,
*nat
:PREROUTING ACCEPT
:POSTROUTING ACCEPT
:OUTPUT ACCEPT
-A PREROUTING -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
# - вот у вас так, conntrack насколько я понимаю используются для ограничения количества попыток
# соединений за определенное время? но тут нет параметров. У вас conntrack используется во всех
# правилах, маскардинга у вас нет у меня же адрес динамический.
Для ограничения дятлов используется модуль state в цепочке SSH_CHECK.
В nat/PREROUTING стоит правило conntrack для предотвращения ситуации с переначиванием уже заDNATенных пакетов.

Цитировать
-A PREROUTING -p tcp -m tcp --dport 42167 -j DNAT --to-destination 192.168.1.2:42167
Например, этих пакетов.

Цитировать
-A POSTROUTING -o eth1 -s 192.168.1.0/24 -j MASQUERADE
-A POSTROUTING -o ppp0 -s 192.168.1.0/24 -j MASQUERADE
Обратите внимание, у вас ppp0 - исходящий интерфейс. Мы ещё вернёмся к этому отличию чуть позже.
В вашем случае можно убрать указание адреса источника, маскарад сам разберётся, если действительно надо будет натить пакеты. Два раза дурную работу делать не будет :)

Цитировать
*filter
:INPUT DROP
:FORWARD DROP
:OUTPUT DROP
:icmp-in
:OUTPUT DROP - это почти всегда ошибка в настройке.

Цитировать
-A INPUT -i lo -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -i eth1 -p gre -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -s 192.168.1.0/24 -i eth0 -m state --state NEW,ESTABLISHED -j ACCEPT
Вот здесь, смотрите, что у вас получается. И что - у меня.
У вас:
ВСЕ пакеты проверяются на вышеотквоченные правила (worst case, так сказать).
У меня:
ВСЕ пакеты проверяются на ОДНО правило:
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
Пакеты, не признанные предыдущим правилом, проверяются на локальность (-m conntrack здесь не более, чем перестраховка)
-A INPUT -i lo -m conntrack --ctstate NEW -j ACCEPT
Принимаются все пакеты icmp и gre
-A INPUT -p gre -j ACCEPT
-A INPUT -p icmp -j ACCEPT
Ты ещё тут?? Принимаются пакеты из локальной сети (со всех интерфейсов - eth1 на этой системе реально не существует :) )
-A INPUT -s 192.168.35.0/255.255.255.0 -i ! eth1 -m conntrack --ctstate NEW -j ACCEPT
Что, ОПЯТЬ??? Всё, что до сих пор не нашло своего ACCEPT'а, заталкивается в спамоловку
-A INPUT -p tcp -m multiport --dports 9,22,25,110 -m conntrack --ctstate NEW -j SSH_CHECK
Всё, что пережило предыдущее правило, проверяется ещё десятком фильтров, но это - слёзы, по сравнению с трафиком, отсеиваемым самым первым правилом.
(Нажмите, чтобы показать/скрыть)

Цитировать
-A INPUT -i eth0 -p tcp -m tcp --dport 137:139 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 137:139 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 445 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 445 -j ACCEPT
Не проще локалку разрешить и не мучаться?

Цитировать
-A INPUT -i eth0 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -i ppp0 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 21 -j ACCEPT

А...
-A INPUT -p tcp -m tcp --dport 21 -m conntrack --ctstate NEW -j ACCEPT
...не?

Цитировать
-A INPUT -i ppp0 -s 192.168.1.1 -p tcp -m tcp --dport 1194 -j ACCEPT
-A INPUT -i eth1 -s 192.168.1.1 -p udp -m udp --dport 1194 -j ACCEPT
Немного не понял структуры ваших сетей.

Цитировать
-A INPUT -i ppp0 -s 192.168.1.2 -p tcp -m tcp --dport 42167 -j ACCEPT
-A INPUT -i eth1 -s 192.168.1.2 -p tcp -m tcp --dport 42167 -j ACCEPT
Вы этот порт заDNATили, что он делает в INPUT?

Цитировать
-A INPUT -p icmp -m icmp --icmp-type 8 -j DROP
Смысл? Смотрите выше, icmp трафик - это слёзы. Проще его пропускать весь, чем городить огород с правильной фильтрацией. (А это правил десять минимум!)

Цитировать
# жуткая портянка дропов
Все инвалидные флаги и правила, не попавшие в ACCEPT, ловятся conntrack'ом... нет смысла заморачиваться дополнительно при -P INPUT DROP

Цитировать
# dhcp local
Замените state на conntrack... и откройте OUTPUT. Всё заработает.

Цитировать
Цитировать
multiport --dports 9,22,25,110
т.е так 137:445 диапазон, а через , единичные порты, не знал, отдельное спасибо
man iptables ? ;)
Диапазон можно и через тире. (вроде)

Цитировать
Так же хотелось бы спросить, почему вы закрыли порт 110 pop3 именно так, а не тихим дроп?
Чтобы клиент не гадал, что случилось с пакетом.

Цитировать
Цитировать
-A INPUT -s 192.168.35.0/255.255.255.0 -i ! eth1 -m conntrack --ctstate NEW -j ACCEPT
Вот этот "!" он же в разных случаях по разному действует?

Этот ! действет всегда одинаково. Отрицает правило. "Пришло не с eth1".

Цитировать
Цитировать
-A FORWARD -i ppp+ -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1357:1500 -j TCPMSS --set-mss 1356
У меня есть правило которое исправляет mtu, но оно подгружается после поднятия ppp+
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1500 -j TCPMSS --clamp-mss-to-pmtu -o ppp0
без него страницы не открываются

Вот мы и добрались до разницы. У меня ppp соединения - входящие :)
В моём случае --clamp-mss-to-pmtu не работает, MSS сервера на исходящих ограничен сверху только одним натом (1460 байт).
На входящих ppp соединениях же MTU 1396, чтобы работал интернет за натом, надо сказать клиентам, чтобы понизили MSS ЕЩЁ на 40 байт. 1356 (см. правило выше).
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн connectof

  • Новичок
  • *
  • Сообщений: 12
  • A. Connectof
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #976 : 27 Ноября 2010, 15:08:03 »
Сложно конечно, я себе всю эту структуру представлял более топорно, по поводу статуса соединения, кое что нашел.
(Нажмите, чтобы показать/скрыть)
но, насколько я понимаю соединение не может быть установлено если есть общее запрещающее правило или правило указывающие конкретно что именно запрещено, из моих правил выходит что -m state --state NEW,ESTABLISHED -j ACCEPT, дыры, т.е оно пропускает все
AnrDaemon
Цитировать
Такая попытка по меньшей мере странная Smiley
Если это открытый шлюз, conntrack использовать для разрешения как-то бессмысленно. Скорее, это должно быть единственное запрещающее правило.
Если это брандмауэр с натом - тогда одним правилом тут не отделаешься.
Попытка сделать брандмауэр с натом конечно же, что вы посоветуете?
Цитировать
Немного не понял структуры ваших сетей.
eth1 локальная сеть от провайдера, довольно таки загаженная, сыплется неимоверное количество попыток соединений в секунду по разным портам.
ppp0  поднят openl2tpd, интернет.
eth0 локальная сеть
Цитировать
Для ограничения дятлов используется модуль state в цепочке SSH_CHECK.
Мда conntrack, connlimit, путал их, так не приходилось использовать. conntrack оказывается более продвинутый вариант -m state. Сложно понять нечто большее не имея соотв. образования. Можно сесть и нарисовать себе схему, но не думаю что это существенно изменить что то...
О state и conntrack, lor
(Нажмите, чтобы показать/скрыть)
Что лучше использовать второй понятно было и так, с ваших слов
conntrack управляет состоянием соединений, правила типа icmp type 11 и 3 мне не нужны?
Цитировать
предотвращения ситуации с переначиванием уже заDNATенных пакетов.
пакетов которые перенаправлены на конкретную машину внутри сети? что значит "переначиванием"? что с ними происходит? я понял лишь то что conntrack помогает определить статус nat пакетов, и что то предпринимает. Но на практике это ничего не дает
Цитировать
Ты ещё тут?
хотел тоже самое спросить, спасибо что так развернуто ответили, не поленились
Цитировать
OUTPUT DROP - это почти всегда ошибка в настройке.
виндовые машины в сети есть, хоть они и всегда чистые и под контролем, лучше перестраховаться думал я
Цитировать
ВСЕ пакеты проверяются на вышеотквоченные правила (worst case, так сказать).
замедляет работу? А icmp я боюсь уже разрешать, почитал что люди пишут, последил в своё время за коробочкой-роутером и его логами там после сканирования портов шли атаки разного рода, когда он не отвечал на запросы пинга и была включена защита от сканирования портов, их поубавилось
Цитировать
Вы этот порт заDNATили, что он делает в INPUT?
а без этого не работало
filter же действует для внутренней сети которая за натом?
Цитировать
Этот ! действет всегда одинаково. Отрицает правило. "Пришло не с eth1".
все кроме eth1?
-A INPUT -s 192.168.35.0/255.255.255.0 -i ! eth1 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -m conntrack --ctstate DNAT -j ACCEPT
-A FORWARD -s 192.168.35.0/255.255.255.0 -i ! eth1 -m conntrack --ctstate NEW -j ACCEPT

вот эти правила разрешающие, мне бы как то попроще, закрыться от внешки и разрешить только то что нужно.
« Последнее редактирование: 27 Ноября 2010, 15:20:29 от connectof »

Оффлайн bubuntu-ru

  • Любитель
  • *
  • Сообщений: 92
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #977 : 27 Ноября 2010, 18:09:59 »

eth1 локальная сеть от провайдера, довольно таки загаженная, сыплется неимоверное количество попыток соединений в секунду по разным портам.

виндовые машины в сети есть, хоть они и всегда чистые и под контролем, лучше перестраховаться думал я
А icmp я боюсь уже разрешать, почитал что люди пишут, последил в своё время за коробочкой-роутером и его логами там после сканирования портов шли атаки разного рода, когда он не отвечал на запросы пинга и была включена защита от сканирования портов, их поубавилось

вот эти правила разрешающие, мне бы как то попроще, закрыться от внешки и разрешить только то что нужно.
Если соединения идут по разным портам с разных хостов, обычная проба. Если типа так, 192.168.1.100 и с 0 до 65535  портов, тогда скан.
Если отдача в дропе по дефолту,  ошибок не будет.
3 пинга уж можно включить, а как же пинг с хостов в локалке и трассер как минимум.
Если и есть защита от пинга, даже nmap многое узнает -PN (хотя если айпитаблес  нормально настроить, nmap, он нагнет :))
Если попроще, то пластиковый роутер нормальный вариант будет.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #978 : 28 Ноября 2010, 00:46:53 »
Forewarning: Мая есть пить, за ашипки не ругать.
Сложно конечно, я себе всю эту структуру представлял более топорно, по поводу статуса соединения, кое что нашел.
(Нажмите, чтобы показать/скрыть)
Представлял топорно, или структуру топорно? :)
По поводу спойлера - conntrack как раз следит за этим, и ещё за кое-чем. Я сам до конца не разбирался, но по диагонали документацию пробежал.

Цитировать
но, насколько я понимаю соединение не может быть установлено если есть общее запрещающее правило или правило указывающие конкретно что именно запрещено,
Вообще - да. В частности - надо смотреть конкретные наборы правил.

Цитировать
из моих правил выходит что -m state --state NEW,ESTABLISHED -j ACCEPT, дыры, т.е оно пропускает все

Скажем так, большую часть. В отсутствие RELATED не проходят сервисные пакеты, это может вводить в ступор некоторые приложения.
И, как я уже сказал, мешать NEW с ESTABLISHED - создавать слабо управляемую (если вообще) кашу.

Цитировать
AnrDaemon
Цитировать
Такая попытка по меньшей мере странная Smiley
Если это открытый шлюз, conntrack использовать для разрешения как-то бессмысленно. Скорее, это должно быть единственное запрещающее правило.
Если это брандмауэр с натом - тогда одним правилом тут не отделаешься.
Попытка сделать брандмауэр с натом конечно же, что вы посоветуете?
Нарисовать схему маршрутизации в сети на большом листе. А3 или больше.
Ваши сомнения в целесообразности беспочвенны, это поможет :)
Просто распечатайте на второй лист вот эту табличку, поставьте палец на свою схему маршрутизации и воообразите себя пакетом. Проведите пальцем по всей карте, выписывая названия таблиц и цепочек, через которые проходит пакет. Дополните их правилами... Потом внесите всё в компьютер.

Цитировать
Цитировать
Немного не понял структуры ваших сетей.
eth1 локальная сеть от провайдера, довольно таки загаженная, сыплется неимоверное количество попыток соединений в секунду по разным портам.
Фигня всё это... Я вот на следующей неделе ещё одну хаутушку опубликую, думаю, вам будет небезынтересно.

Цитировать
ppp0  поднят openl2tpd, интернет.
eth0 локальная сеть
Ясно.

Цитировать
Цитировать
Для ограничения дятлов используется модуль state в цепочке SSH_CHECK.
Мда conntrack, connlimit, путал их, так не приходилось использовать. conntrack оказывается более продвинутый вариант -m state.
Скорее, более адекватный и современный.

Цитировать
Сложно понять нечто большее не имея соотв. образования.
Вы всё правильно поняли :)
Для _настройки_ большего знать в общем-то необязательно. Хотя, не скрою, желательно.

Цитировать
О state и conntrack, lor
По-моему, обычный звездёж :) Что в общем-то обычно для лора. (Это не значит, что они не правы, просто не понравился заданный участниками тон разговора)

Цитировать
conntrack управляет состоянием соединений, правила типа icmp type 11 и 3 мне не нужны?
Нет. Правило -m conntrack --ctstate ESTABLISHED,RELATED, записанное в начало цепочки, вообще покрывает, как вы видели, более 90% всех проходящих пакетов. Ибо раз мы разрешили установку этого соединения, глупо перепроверять на валидность каждый отдельный входящий в него пакет.

Цитировать
Цитировать
предотвращения ситуации с переначиванием уже заDNATенных пакетов.
пакетов которые перенаправлены на конкретную машину внутри сети? что значит "переначиванием"? что с ними происходит? я понял лишь то что conntrack помогает определить статус nat пакетов, и что то предпринимает. Но на практике это ничего не дает
Мая есть пьян и ленив. Так что копаться в поиске не беду, просто скажу, что возможна ситуация, в которой уже перенаправленное установленное соединние оказывается ещё раз перенаправлено, уже по другому адресу либо с другими параметрами, что напрочь убивает возможность его использования.
При этом внешне правила кажутся рабочими.

Цитировать
Цитировать
Ты ещё тут?
хотел тоже самое спросить, спасибо что так развернуто ответили, не поленились
Ну, "ты ещё тут" относилось к пакету... надеюсь, это было понятно :)

Цитировать
Цитировать
OUTPUT DROP - это почти всегда ошибка в настройке.
виндовые машины в сети есть, хоть они и всегда чистые и под контролем, лучше перестраховаться думал я
DROP в цепочке OUTPUT никак не поможет, а вот вредит изрядно, заставляя писать куча странных, плохо читаемых правил, которые потом ещё приходится комментировать (чтобы не забыть) и поддерживать в актуальном виде.
(Кивая в сторону вышеупомянутой таблички) цепочка OUTPUT вообще относится полностью к самому серверу.

Цитировать
Цитировать
ВСЕ пакеты проверяются на вышеотквоченные правила (worst case, так сказать).
замедляет работу?
Повышает рагрузку на сервер, чтобы быть точным. Незначительно, но всё же. Сами сравните.
iptables -vL
и посчитайте, сколько (в процентном соотношении) пакетов(первая колонка) проходит через каждое правило.
А потом замените те четыре правила на
(Нажмите, чтобы показать/скрыть)

Цитировать
А icmp я боюсь уже разрешать, почитал что люди пишут, последил в своё время за коробочкой-роутером и его логами там после сканирования портов шли атаки разного рода, когда он не отвечал на запросы пинга и была включена защита от сканирования портов, их поубавилось
Это несколько из другой оперы и лечится другими средствами. Для начала хорошо бы создать рабочую систему.

Цитировать
Цитировать
Вы этот порт заDNATили, что он делает в INPUT?
а без этого не работало
Значит, где-то ошиблись с настройкой.

Цитировать
filter же действует для внутренней сети которая за натом?
Таблица filter действует... выше ссылка.

Цитировать
Цитировать
Этот ! действет всегда одинаково. Отрицает правило. "Пришло не с eth1".
все кроме eth1?
Я как бы именно это и сказал. Ибо интерфейсов реально много :)
(Нажмите, чтобы показать/скрыть)

Цитировать
-A INPUT -s 192.168.35.0/255.255.255.0 -i ! eth1 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -m conntrack --ctstate DNAT -j ACCEPT
-A FORWARD -s 192.168.35.0/255.255.255.0 -i ! eth1 -m conntrack --ctstate NEW -j ACCEPT

вот эти правила разрешающие, мне бы как то попроще, закрыться от внешки и разрешить только то что нужно.

Так у нас запрещено всё, что не разрешено :) Потому и правила все разрешающие... кроме специально оговорённых запрещающих.
Внимательно ещё раз перечитайте man iptables, часть TARGETS.
P.S.
Приведённый мной в предыдущем сообщении конфиг может служить таким себе примером минималистического подхода к настройке маршрутизатора. Там есть немного мусора и отсутствует одно правило, но в остальном - только необходимое.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн connectof

  • Новичок
  • *
  • Сообщений: 12
  • A. Connectof
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #979 : 28 Ноября 2010, 17:01:54 »
bubuntu-ru
Цитировать
Если попроще, то пластиковый роутер нормальный вариант будет.
Нет, не вариант, я собрал тихую платформу с низким энергопотреблением которую можно было бы обвешать необходимыми функциями, которая бы не загибалась от малейших нагрузок внутри сети, не резала бы скорость как это происходит на некоторых роутерах -и я её получил, все работает хорошо, но правила ipt кривые - да. ftp даже поднять, независимое файловое хранилище
Цитировать
3 пинга уж можно включить, а как же пинг с хостов в локалке и трассер как минимум.
Да конечно. за traceroute отвечает тот же пинг вроде бы, нет? поправьте меня тогда
AnrDaemon
это все хорошо, судя по таблице выходит что пакеты идущие через форвард фильтрацию не проходят, но если судить иначе, пакеты приходят на внешние адреса и только потом передаются внутренней подсети о.0
 Сегодня еще русскую вики полистал (на удивление, там очень хорошо некоторые вещи разобраны )
Изменил правила, стал использовать -m conntrack --ctstate, вроде бы все гладко.
(Нажмите, чтобы показать/скрыть)
внутри сети закрыто все что явно не разрешено, чего я и хотел, из вне тоже не должны достучаться поидее (если nmap-online и nmap можно верить вообще)
Щас по идее все закрыто, если что будет криво работать я этим займусь отдельно, поэкспериментирую посижу, но пока...
Цитировать
-A FORWARD ! -s 192.168.1.0/24 -m conntrack --ctstate NEW -p tcp --sport  0:65535 -j DROP
И так, - если источник ПРИХОДЯЩЕГО транзитного трафика не подсеть 192. посылаем нафиг, т.е должно блокировать все из вне, оно?
« Последнее редактирование: 28 Ноября 2010, 20:41:13 от connectof »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #980 : 29 Ноября 2010, 00:22:46 »
Ещё раз, медленно.
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT !!!!!!!!!!!!!!!!!!!!!!!!!!!!
Дальше разрешаем только то, что должно быть разрешено.
Никаких дополнительных дропов городить не надо.

P.S.
Маршрутизированные пакеты проходят фильтр - в своей собственной цепочке. Ссылку на карту я давал.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Lion-Simba

  • Старожил
  • *
  • Сообщений: 1126
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #981 : 30 Ноября 2010, 17:09:47 »
Не совсем понимаю принцип действия
-m state --state NEW,ESTABLISHED -j ACCEPT

-m conntrack
state не работает с UDP.
Пруф?
Оказываю индивидуальную платную техподдержку широкого профиля. Обращаться в ЛС или Jabber.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #982 : 30 Ноября 2010, 17:21:53 »
Лень.
Даже если я был не прав, смысл ломать копья об архаичные модули? Использовать его ты всё равно не будешь.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Lion-Simba

  • Старожил
  • *
  • Сообщений: 1126
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #983 : 30 Ноября 2010, 18:59:13 »
Лень.
А вводить людей в заблуждение вам не лень.

Даже если я был не прав, смысл ломать копья об архаичные модули? Использовать его ты всё равно не будешь.
Я его использую. Успешно. Вместе с UDP.

Как правильно было подмечено здесь:
Цитировать
Не надо путать систему conntrack и критерий conntrack. state предоставляет такой же интерфейс к той же самой системе conntrack, только куцый и урезанный до невозможности.
Это же подтверждается исходниками. Если мне из всего conntrack нужны только состояния NEW, ESTABLISHED и RELATED, зачем мне весь остальной интерфейс conntrack?

В связи с этим мне не понятно ваше повсеместное желание отучить всех пользоваться -m state.
Оказываю индивидуальную платную техподдержку широкого профиля. Обращаться в ЛС или Jabber.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #984 : 30 Ноября 2010, 20:13:08 »
Так такой же, или куцый и урезанный? Определитесь уже, а то дискуссим не получается - я от смеха из-под стола вылезти не могу.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Lion-Simba

  • Старожил
  • *
  • Сообщений: 1126
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #985 : 30 Ноября 2010, 22:35:50 »
Так такой же, или куцый и урезанный? Определитесь уже, а то дискуссим не получается - я от смеха из-под стола вылезти не могу.
Интерфейс - урезанный, но к той же самой реализации. Это не два разных модуля, это два разных интерфейса к одному и тому же модулю. Если мне не нужны все возможности модуля, то мне хватит и урезанного интерфейса.

Модуль всего один - conntrack. Это подсистема ядра.
А интерфейсов к нему два - state и conntrack (да, он называется так же, как и сама подсистема).
Интерфейс state явялется подмножеством интерфейса conntrack.
Оказываю индивидуальную платную техподдержку широкого профиля. Обращаться в ЛС или Jabber.

Оффлайн Pro_ceed

  • Новичок
  • *
  • Сообщений: 9
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #986 : 08 Декабря 2010, 17:15:00 »
Да, есть... Извиняюсь. А интернет ползёт через tun? Может правило "-A FORWARD -o tun+ -j ACCEPT" дырочку для таких действий оставило?
Если покажешь результирующую таблицу правил - будет наглядней
sudo iptables-save
Извиняюсь что не написал раньше были маленькие технические неувязки.
Параметры сети:

PPP0 (eth1)-------squid3------- eth2 (локальная сеть)

Вот вывод на команду sudo iptables-save:

(Нажмите, чтобы показать/скрыть)
« Последнее редактирование: 08 Декабря 2010, 17:16:34 от Pro_ceed »

Оффлайн merfo

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #987 : 15 Декабря 2010, 21:45:43 »
Что то буксую... Подскажите пожалуйста.
Задача простейшая, в принципе.
Нужно исходящий запрос на определённый IP направить на 127.0.0.1
Как будет правило выглядеть?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #988 : 15 Декабря 2010, 21:59:17 »
По идее
-t nat -A OUTPUT -d xx.xx.xx.xx -j DNAT --to-destination 127.0.0.1Только вот как это дальше цепочки OUTPUT пойдёт и пойдёт ли - чёт я затрудняюсь...

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #989 : 15 Декабря 2010, 22:14:24 »
Что то буксую... Подскажите пожалуйста.
Задача простейшая, в принципе.
Нужно исходящий запрос на определённый IP направить на 127.0.0.1
Как будет правило выглядеть?


Задача поставлена некорректно.  (Или если точнее, условие задачи сильно смахивает на создание дыры в безопасности шлюза)
Какая реальная цель такого перенаправления? От этого будет зависить правильный ответ на вопрос.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.04 секунд. Запросов: 26.