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


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

Автор Тема: iptables вопросы.  (Прочитано 2036 раз)

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

Оффлайн incognito15

  • Автор темы
  • Любитель
  • *
  • Сообщений: 81
    • Просмотр профиля
iptables вопросы.
« : 29 Мая 2015, 11:53:25 »
1) предположим есть два правила:
а) -A INPUT -p tcp -m conntrack --ctstate NEW -m tcp --dport 22 -j ACCEPT
б) -A INPUT -p 22 -j ACCEPT
а - работает, б - не работает. Почему? Или я не правльно понимаю смысл значения?
Цитировать
....or  it can  be a numeric value, representing one of these protocols or a different one.  A protocol name from /etc/protocols is also allowed.

2) зачем применяется опция -m?
 а) что за модуль такой conntrack? man nf_conntrack ничего не выдвет.

3) Что такое --ctstate? Я предполагаю, что речь может идти о новых соединениях, но где можно прочитать про дейтсвие этого параметра?
4)в примере говорят, что необходимо добавить такие строки
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
Для чего это делается? Что дает?
5) как (где) можно более подробно почитать про значения которые можно подставить к тому или иному параметру?
как пример параметры используемые в этой цепочке iptables -A bad_tcp_packets -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset6) Как выключить фаервол. что бы оп пришел к дефолтному состоянию "все разрешено"?
я делаю так
# iptables -P INPUT ACCEPT
# iptables -P OUTPUT ACCEPT
# iptables -P FORWARD ACCEPT
« Последнее редактирование: 29 Мая 2015, 12:29:49 от incognito15 »

symon2014

  • Гость
Re: iptables вопросы.
« Ответ #1 : 29 Мая 2015, 12:23:05 »

Оффлайн incognito15

  • Автор темы
  • Любитель
  • *
  • Сообщений: 81
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #2 : 29 Мая 2015, 12:25:50 »
это я читал, но ответов на свои вопросы не нашел (хотя может был не внимателен), к тому же они и возникли по большей части после его прочтнения и начало опытной реализации.

Оффлайн incognito15

  • Автор темы
  • Любитель
  • *
  • Сообщений: 81
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #3 : 01 Июня 2015, 08:48:52 »
я только начинаю разбираться с данным фаерволом, поэтому хотелось бы услышать ответы людей, а не просто указаная на ссылки в интернете

Оффлайн F12

  • Администратор
  • Старожил
  • *
  • Сообщений: 5699
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #4 : 01 Июня 2015, 09:47:27 »
incognito15,
на самом деле, однозначный ответ на подобные вопросы дать довольно сложно, учиться лучше не на каких-то фрагментах абстрактных "предположим" и "допустим", а на реально работающих цепочках правил, посему, предлагаю читать и еще раз читать http://www.google.com/search?client=fs&q=создание+правил+для+iptables

Оффлайн incognito15

  • Автор темы
  • Любитель
  • *
  • Сообщений: 81
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #5 : 01 Июня 2015, 10:19:55 »
ну чтобы создавать свои примеры нужно разобраться, что значит каждый параметр в приведенных в статьях примерах.

Я допустим так и не нашел ответа на свой первый вопрос, хотя формально он записан рпавильно (на мой взгляд).
Также мне не совсем ясен пример под циврой 4.

как можно уточнить какие модули (iptables в системе установлены и активны)? И как уточнить их использование, например, модуль подгружаемый или используется через ядро?
« Последнее редактирование: 01 Июня 2015, 10:36:19 от incognito15 »

Оффлайн F12

  • Администратор
  • Старожил
  • *
  • Сообщений: 5699
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #6 : 01 Июня 2015, 12:03:33 »
incognito15,
разумеется, знать "что значит каждый параметр" буде точно нелишним... это, как бы, необходимое условие, но отнюдь, далеко не достаточное...

Вот, например, тут можно почитать описание основных "параметров", но не думаю, что после их заучивания Вы сразу же поймете суть, Вами же, приведенных примеров и тут же сможете разобраться почему то или иное правило в одной цепочке работает, а в другой нет.

ЗЫ а вопрос про модули я как-то и вовсе не понял... что имеется ввиду?.. ::)

ЗЗЫ на самом деле, iptables, это всего лишь интерфейс для netfilter, не больше и не меньше... ::)

Оффлайн incognito15

  • Автор темы
  • Любитель
  • *
  • Сообщений: 81
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #7 : 01 Июня 2015, 13:37:29 »
Трассировка соединений производится модулем conntrack
В одном из руководств сказано буквально следующее:
Цитировать
Здесь содержится список всех активных соединений. Если модуль ip_conntrack загружен, то команда cat /proc/net/ip_conntrak должна вывести нечто, подобное:

Дело в том, что по приведеному адресу у меня нету файла ip_conntrack, но правило -A INPUT -p tcp -m conntrack --ctstate NEW -m tcp --dport 1812 -j ACCEPT у меня работает, значит модуль загружен и используется (или получается, что код реализуется через ядро?). Код трассировщика может использоваться либо через ядро (интегрирован) либо загружен через модуль. Отсюда возникает вопрос как можно уточнить как реализована поддержка (ядро или модуль)?  И как узнать какие модули сейчас загружены (или их реализованность через код)?

Оффлайн vadim-nsk

  • Старожил
  • *
  • Сообщений: 1318
  • Жить надо так, как горит пламя!
    • Просмотр профиля
    • Linux в Новосибирске
Re: iptables вопросы.
« Ответ #8 : 01 Июня 2015, 13:59:36 »
/proc/net/ip_conntrack :) разве еще используется? вроде еще 12 был deprecated.
http://www.netfilter.org/projects/conntrack-tools/ разве не понятно все рассказано?

Можете еще поставить все-таки conntrack и для полного счастья проверить, что у вас модуль или нет, просто прочитав конфиг ядра (что-нибудь типа cat /boot/config-kernel | grep 'CONFIG_NF_CONNTRACK' . Ну и для кучи lsmod никто не отменял.

я бы начал правило вот так
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPTа уже потом по портам, чтобы понятнее было
sudo iptables -A INPUT -p tcp --dport 1812 -j ACCEPT
Пользователь решил продолжить мысль [time]01 Июнь 2015, 16:04:58[/time]:

так понятнее?
очистка правил
iptables -Fеще хорошо проверять какие правила за какими идут в цепочках
iptables -L --line-numbers
« Последнее редактирование: 01 Июня 2015, 15:17:24 от vadim-nsk »

Оффлайн incognito15

  • Автор темы
  • Любитель
  • *
  • Сообщений: 81
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #9 : 01 Июня 2015, 15:14:29 »
вы возможно имели виду /usr/src/linux-header-3.16.0.-23.generic/.config?
там приведеная вами запись присутствует в таком виде CONFIG_NF_CONNTRACK=m, но мне не совсем ясно, что означает ключ m.

Цитировать
/proc/net/ip_conntrack :) разве еще используется? вроде еще 12 был deprecated.
Возможно и устарел, незнаю, я же написал что начинаю только разбираться с iptables (netfilter), отсюда и возникают вопросы, которые могут вызвать смех у гуру. Так как все таки посмотреть список соединений, я четно так и не понял

если вы про первый вопрос, то правило выглядело так:
#!/sbin/iptables-restore
# Таблица filter и её цепочки
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
# Разрешаем связанные и установленые соединения
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
# Разрешаем служебный icmp-трафик
-A INPUT -p icmp -j ACCEPT
# Разрешаем доверенный трафик на интерфейс loopback
-A INPUT -i lo -j ACCEPT
#ssh
-A INPUT -p 22 -j ACCEPT.
# Запрещаем всё остальное для INPUT
-A INPUT -j REJECT
COMMIT

ну мне проще записать правила в файл, а затем его запустить, так и порядок следования проследить проще и наглядней выглядит (на мой взгляд)
« Последнее редактирование: 01 Июня 2015, 15:31:30 от incognito15 »

Оффлайн vadim-nsk

  • Старожил
  • *
  • Сообщений: 1318
  • Жить надо так, как горит пламя!
    • Просмотр профиля
    • Linux в Новосибирске
Re: iptables вопросы.
« Ответ #10 : 01 Июня 2015, 15:34:37 »
Похвально все. Тема достаточна серьезная. Пытаюсь вам помочь.
Ссылки вам уже на опеннет скинули.
В убунте обычно конфиг текущего ядра тут:
cat /boot/config-$(uname -r)
m- модуль
ну и я спросил вы уже установили conntrack , если действительно решили разобраться с данным модуле ?
Может еще такая поможет https://ru.wikipedia.org/wiki/Netfilter https://ru.wikibooks.org/wiki/Iptables .
На вики генту и арча тоже вроде нормальный материал.
Отдельно про модуль conntrack помоему ничего интересного нет.


Пользователь решил продолжить мысль [time]01 Июнь 2015, 16:39:12[/time]:

ну мне проще записать правила в файл, а затем его запустить, так и порядок следования проследить проще и наглядней выглядит (на мой взгляд)

так для порядка при записи можно указывать куда вписать правило :)
iptables -I INPUT n RULES
где n номер правила, RULES само правило

вы опять показали такое правило
-A INPUT -p 22 -j ACCEPTВ мане никакого протокола 22 не существует.
цитирую
Цитировать
tcp, udp, udplite, icmp, icmpv6,esp, ah,  sctp,  mh  or  the  special  keyword  "all"
« Последнее редактирование: 01 Июня 2015, 15:52:57 от vadim-nsk »

Оффлайн incognito15

  • Автор темы
  • Любитель
  • *
  • Сообщений: 81
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #11 : 01 Июня 2015, 15:56:51 »
ну вот честно говоря, я ничего дополнительно н скачивал и не устанавливал. как установил  Ubuntu 14.10, так практически и ничего и н тсавил и не тюнил ее. так что можно. Про контракт я просто привел пример, как мне кажется он наиболее распостранен, ну и в мое примере используется:). По поводу модуля я как раз и не пойму как он реализован (ну судя по всему через модуль). lsmod ничего не показывает
root@pc:/etc/puppet# lsmod | grep conntrak
root@pc:/etc/puppet#

Как вставлять правила не знал - спасибо. Но на данном этапе мне все же проще чеерз файл пока все делать  :)

Оффлайн vadim-nsk

  • Старожил
  • *
  • Сообщений: 1318
  • Жить надо так, как горит пламя!
    • Просмотр профиля
    • Linux в Новосибирске
Re: iptables вопросы.
« Ответ #12 : 01 Июня 2015, 16:18:19 »
исправил на
-A INPUT -p tcp --dport 22 -j ACCEPT ???
можешь попробовать вместо conntrack использовать state , чтобы еще больше запутатся, но потом чтобы не возникало вопросов.
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
sudo lsmod | grep nf
[sudo] password for vadim:
nf_conntrack_ipv4      15012  0
nf_defrag_ipv4         12758  1 nf_conntrack_ipv4
nf_conntrack           96976  2 xt_conntrack,nf_conntrack_ipv4
Странно вы все-таки модули смотрите и правила пишете.
« Последнее редактирование: 01 Июня 2015, 16:43:16 от vadim-nsk »

Оффлайн oermolaev

  • Старожил
  • *
  • Сообщений: 1479
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #13 : 01 Июня 2015, 16:34:48 »
..... Но на данном этапе мне все же проще чеерз файл пока все делать  :)

ну вот вам на нашей wiki  "через файл"

Оффлайн incognito15

  • Автор темы
  • Любитель
  • *
  • Сообщений: 81
    • Просмотр профиля
Re: iptables вопросы.
« Ответ #14 : 01 Июня 2015, 16:41:21 »
oermolaev,
я вообщем-то с нее и начал изучение.

Как создавать правила через консоль или через файл сейчас вопрос не в этом.

Я походу нашел контрак
lsmod |grep nf*
nf_conntrack_ipv4      14806  0
nf_defrag_ipv4         12758  1 nf_conntrack_ipv4
xt_conntrack           12760  0
nf_conntrack          105044  2 xt_conntrack,nf_conntrack_ipv4

получается он реализуется через модуль.
Кстати, что сейчас вместо ip_conntrack используется?

 

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