Различия между версиями 3 и 4
Версия 3 от 2013-12-06 13:42:32
Размер: 3179
Редактор: FrBrGeorge
Комментарий:
Версия 4 от 2013-12-15 16:55:31
Размер: 3380
Редактор: FrBrGeorge
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 47: Строка 47:
 * Следующая команда выдаёт ошибку. Почему? ==== Межсетевые экраны ====
* <!> (задание по МЭ в отчёт можно не включать) Следующая команда выдаёт ошибку. Почему?
Строка 52: Строка 53:
 * В следующих примерах для проверки связности запускать команду  * <!> (задание по МЭ в отчёт можно не включать) В следующих примерах для проверки связности запускать команду

Введение в межсетевые экраны

МЭ — обработка сетевого трафика (вообще говоря, на всех уровнях):

  • ограничение
  • преобразование
  • перенаправление
  • учёт (в первую очередь для последующего анализа)

IPTables

Общее устройство https://www.frozentux.net/iptables-tutorial/iptables-tutorial.html (довольно старый перевод):

  • ядерная часть + утилита управления iptables

  • «Пакеты» транспортного и сетевого уровня
  • Правила обработки пакетов: условие → действие по принципу «кто первый попал»

  • Правила объединены в цепочки (действие выглядит как переход в другую цепочку)
  • Цепочки бывают разного типа (это называется «цепочка из таблицы»)
  • Переход между цепочками по умолчанию:

tables_traverse.jpg

  • Возврат из пользовательских цепочек

Команды (над цепочками):

  • -A, -D, -R №, -I №
  • -F, -Z
  • -N, -X

Параметры:

  • -t Table (по умолчанию — filter)

Действия:

  • ACCEPT, DROP, REJECT, RETURN
  • SNAT, DNAT, MASQUERADE, NETMAP
  • LOG, ULOG
  • MARK, CONNMARK

Условия:

  • -s, -d (IP); -i, -o (iface)
  • -p протокол, --sport, --dport
  • --icmp-type №
  • -m подмодуль

    • mark, connmark
    • conntrack, state (TCP)
    • helper (прикладной уровень)
    • owner (как имя процесса, так и IDs)
    • recent

Д/З

Межсетевые экраны

  • <!> (задание по МЭ в отчёт можно не включать) Следующая команда выдаёт ошибку. Почему?

    [root@uneex ~]# iptables -A POSTROUTING -d 217.76.32.61 -j REJECT
    iptables: No chain/target/match by that name.
  • <!> (задание по МЭ в отчёт можно не включать) В следующих примерах для проверки связности запускать команду

    # echo -e "GET / HTTP/1.0\nHost: linux.org.ru\n" | netcat linux.org.ru 80
    с клиента и с сервера и просматривать сами правила с помощью
    [root@uneex ~]# iptables-save 
    • Добавить фильтрующее правило:
      [root@uneex ~]# iptables -A FORWARD -d 217.76.32.61 -j REJECT
    • Удалить фильтрующее правило:
      [root@uneex ~]# iptables -D FORWARD -d 217.76.32.61 -j REJECT
    • Добавить фильтрующее правило:
      [root@uneex ~]# iptables -A OUTPUT -d 217.76.32.61 -j REJECT
    • Удалить фильтрующее правило
    • Посмотреть на соединения, обслуживаемые conntrack:
      [root@uneex ~]# cat /proc/net/nf_conntrack        

LecturesCMC/LinuxNetwork2013/10-FireWalls (последним исправлял пользователь FrBrGeorge 2013-12-15 16:55:31)