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


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

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

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

Оффлайн ivsatel

  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1620 : 10 Марта 2012, 19:31:05 »
/sbin/modprobe ip_conntrack
Наверно лишний, так как он вызывается из этого правила. Если я не ошибаюсь.
-A INPUT -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m conntrack --ctstate INVALID,NEW -j REJECT --reject-with tcp-reset

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1621 : 10 Марта 2012, 19:51:36 »
а после этого будут идти #отбрасываем пакеты, которые невозможно идентифицировать
Пакеты, которые невозможно идентифицировать, отбрасываются правилом по умолчанию для цепочки.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн novis

  • Любитель
  • *
  • Сообщений: 68
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1622 : 10 Марта 2012, 19:52:02 »
/sbin/modprobe ip_conntrack
Наверно лишний, так как он вызывается из этого правила. Если я не ошибаюсь.
-A INPUT -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m conntrack --ctstate INVALID,NEW -j REJECT --reject-with tcp-reset
И да, Вы снова правы. Каюсь, тупо скопировал :) хотя прочитал о подключении этого модуля. Работает без него :)
Помогите решить проблему https://forum.ubuntu.ru/index.php?topic=176398.msg1408153#msg1408153

Оффлайн ivsatel

  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1623 : 10 Марта 2012, 20:00:51 »
Без него не работает, а работает потому что он уже загружен  :)
Модули которые уже загружены (относительно iptables) можно посмотреть так:

lsmod | grep ipt

Оффлайн bumctik

  • Любитель
  • *
  • Сообщений: 57
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1624 : 16 Марта 2012, 18:05:58 »
Никуда. Вы сами должны организовать их загрузку. Из вами сохранённого места.
т.е. иными словами я должен создать в /корневая дериктория/iptables.sh
скрипт с нужными мне правилами и просто тупо добавить его к автозапуску?
===========================================================
Пользователи убунты не знают о существовании других дистров.
Они считают, что Ubuntu - это и есть Linux, единственный и неповторимый.

Оффлайн novis

  • Любитель
  • *
  • Сообщений: 68
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1625 : 16 Марта 2012, 18:23:36 »
Никуда. Вы сами должны организовать их загрузку. Из вами сохранённого места.
т.е. иными словами я должен создать в /корневая дериктория/iptables.sh
скрипт с нужными мне правилами и просто тупо добавить его к автозапуску?
ИМХО без разницы где он будет располагаться. Но лучше конечно чтоб все в одном месте, чтобы потом не запутаться.А по поводу автозагрузки есть отдельная тема, там рассмотрены многие варианты.
Помогите решить проблему https://forum.ubuntu.ru/index.php?topic=176398.msg1408153#msg1408153

Оффлайн JonnyB

  • Новичок
  • *
  • Сообщений: 29
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1626 : 25 Марта 2012, 19:30:27 »
Подскажите пожалуйста, есть процесс (у него уникальный uid, 1000) который шлет запросы на 80 порт. Хочется пустить его через HTTP_PROXY (1.2.3.4:5). Как это сделать?

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: HOWTO: Iptables для новичков
« Ответ #1627 : 25 Марта 2012, 20:00:23 »
В грубом приближении, имеется шлюз со следующими интерфейсами:
em1 - инет
em2 - локалка

Требуется разрешить доспуп компам из локалки к ftp-серверам в инете.
И, в принципе, это работает:
(Нажмите, чтобы показать/скрыть)
Однако, строка, отмеченная красным, мне сильно не нравится.
Поэтому вопрос сводится к следующему: можно ли машинам в локалке перекрыть доступ в инет на порты 1024:65535 и при этом оставить рабочим доступ к ftp-серверам.
Или, быть может, есть какой-то более правильный способ разрешить доступ ftp-клиентов из локалки к внешнему ftp-серверу?
« Последнее редактирование: 25 Марта 2012, 23:20:22 от arcfi »

Оффлайн ivsatel

  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1628 : 25 Марта 2012, 20:25:28 »
Подскажите пожалуйста, есть процесс (у него уникальный uid, 1000) который шлет запросы на 80 порт. Хочется пустить его через HTTP_PROXY (1.2.3.4:5). Как это сделать?
https://forum.ubuntu.ru/index.php?topic=166336.msg1223005#msg1223005

можно ли машинам в локалке перекрыть доступ в инет на порты 1024:65535 и при этом оставить рабочим доступ к ftp-серверам.
Если известен адрес сервера то примерно так

Разрешить -d 1.2.3.4 -dport 2001
Разрешить -d 4.3.2.1 -dport 2002
Запретить -d 0.0.0.0 -dport 1024:65535

Как то так
« Последнее редактирование: 25 Марта 2012, 20:38:27 от ivsatel »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1629 : 25 Марта 2012, 20:37:53 »
В грубом приближении, имеется шлюз со следующими интерфейсами:
em1 - инет
em2 - локалка

Требуется разрешить доспуп компам из локалки к ftp-серверам в инете.
И, в принципе, это работает:
Цитировать
# iptables-save
# Generated by iptables-save v1.4.12 on Sun Mar 25 19:09:26 2012
*nat
:PREROUTING ACCEPT [2256:265868]
:INPUT ACCEPT [31:6095]
:OUTPUT ACCEPT [44:11164]
:POSTROUTING ACCEPT [26:5932]
-A POSTROUTING -s <LAN1> -o em1 -j SNAT --to-source <GW_WAN_IP>
COMMIT
# Completed on Sun Mar 25 19:09:26 2012
# Generated by iptables-save v1.4.12 on Sun Mar 25 19:09:26 2012
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -o em1 -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A FORWARD -o em1 -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A FORWARD -s <LAN1> -o em1 -p tcp -m state --state NEW -m tcp --dport 1024:65535 -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Sun Mar 25 19:09:26 2012

Однако, строка отмеченная красным, мне сильно не нравится.
И правильно не нравится, потому что она лишняя.
Ставь ftp_conntrack и... и всё.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн AlDemin

  • Участник
  • *
  • Сообщений: 105
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1630 : 25 Марта 2012, 20:43:30 »
Цитировать
И правильно не нравится, потому что она лишняя.
Ставь ftp_conntrack и... и всё.
+1
/sbin/modprobe nf_conntrack_ftp

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: HOWTO: Iptables для новичков
« Ответ #1631 : 25 Марта 2012, 23:58:36 »
ftp_conntrack
О, большое спасибо. Недоглядел. =)

***

Ковыряю iptables на федорке.
Исходная картина выглядит так:
(Нажмите, чтобы показать/скрыть)

В связи с чем задался вопросом, что корректнее использовать для отшивания левого трафика:
-P <CHAIN> DROP
-A <CHAIN> -j REJECT --reject-with icmp-host-prohibited
либо какие-то другие варианты?

***

Погуглил и сам разобрался.
http://www.google.ru/search?q=drop+vs+reject
http://www.chiark.greenend.org.uk/~peterb/network/drop-vs-reject
http://isc.sans.edu/diary.html?storyid=966
« Последнее редактирование: 29 Марта 2012, 16:26:55 от arcfi »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1632 : 26 Марта 2012, 00:46:25 »
Я использую ICMP-unreachable только для UDP. Для TCP tcp-reset.
И как правильно сказано в первой ссылке, дропанье пакетов не защищает от сканеров. Так же, как и резет сокета - "obscurity has no relation to security".
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: HOWTO: Iptables для новичков
« Ответ #1633 : 26 Марта 2012, 01:02:29 »
Я использую ICMP-unreachable только для UDP. Для TCP tcp-reset.
И как правильно сказано в первой ссылке, дропанье пакетов не защищает от сканеров. Так же, как и резет сокета - "obscurity has no relation to security".
ok, буду иметь ввиду.

А какие-нибудь conntrack-модули для вот таких правил имеются?
Код: (bash) [Выделить]
# dhcp request
-A INPUT ! -i em1 -p udp -m state --state NEW -m udp --dport 67 -j ACCEPT

# tftp for pxe
-A INPUT ! -i em1 -p udp -m state --state NEW -m udp --dport 69 -j ACCEPT

# dhcp lease
-A OUTPUT ! -o em1 -p udp -m state --state NEW -m udp --dport 68 -j ACCEPT
Впрочем, особого смысла может и нет.

***

nf_conntrack_tftp и nf_conntrack_proto_udplite вижу, надо пощупать.
« Последнее редактирование: 29 Марта 2012, 16:26:36 от arcfi »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28511
    • Просмотр профиля
Re: HOWTO: Iptables для новичков
« Ответ #1634 : 26 Марта 2012, 02:10:10 »
DHCP lease у меня работает нормально даже при политике DEFAULT DROP. При том, что сервер не на роутере работает...
(Нажмите, чтобы показать/скрыть)

Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

 

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