Чтение онлайн

на главную - закладки

Жанры

Linux-сервер своими руками

Колисниченко Денис Николаевич

Шрифт:
Листинг 14.1. Сценарий управления пакетной фильтрацией

#! /bin/sh

# Сценарий управления пакетной фильтрацией.,

# Если правил нет, то ничего не делать.

[ –f /etc/ipchains.rules ] || exit 0

case "51" in

start)

 echo –n "Включение пакетной фильтрации:" /sbin/ipchains-restore < /etc/ipchains.rules || exit 1

 echo 1 > /proc/sys/net/ipv4/ip_forward

 echo ". "

 ;;

stop)

 echo –n "Отключение
пакетной фильтрации:"

 echo 0 > /proc/sys/net/ipv4/ip_forward

 /sbin/ipchains –X

 /sbin/ipchains –F

 /sbin/ipchains –P input ACCEPT

 /sbin/ipchains –P output ACCEPT

 /sbin/ipchains –P forward ACCEPT

 echo " . "

 ;;

*)

 echo "Использование: /etc/init.d/packetfliter {start|stop}"

 exit 1

 ;;

esac

exit 0

Этот сценарий нужно добавить в сценарии загрузки системы.

14.3. Различные примеры

В этом пункте представлены несколько примеров для обеспечения безопасности вашей сети.

14.3.1. Пакеты SYN

Пакеты SYN используются для запроса на установку соединения. Вы можете отвергать эти пакеты для того, чтобы прервать попытки установить соединение.

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

Для фильтрации пакетов SYN нужно использовать опцию –у. Например, попытки соединения по протоколу TCP от узла 192.168.1.34 указываются так:

–р TCP –s 192.168.1.34 –у

14.3.2. Фрагментация пакетов

Иногда передаваемый пакет слишком большой, чтобы его можно было бы передавать за один раз. Если такое происходит, то пакет делится на фрагменты, и эти фрагменты пересылаются. Компьютер, которому этот пакет предназначен, собирает эти фрагменты в один пакет.

Ядро должно анализировать начало пакета, которое содержится в первом фрагменте. Ведь только в первом фрагменте находится заголовок исходного пакета. Для решения этой проблемы вам нужно перекомпилировать ядро с включенной опцией IP: always defragment.

В результате любое правило фильтрации не будет работать для фрагментированных пакетов. При этом только первый фрагмент

будет обработан как пакет, а остальные не будут обрабатываться. Однако можно определить правило специально для фрагментированных пакетов. Это можно сделать с помощью опции –f. Эту опцию нельзя применять при указании портов протоколов TCP или UDP, кода ICMP или пакетов SYN.

Следующая команда отбросит все фрагменты, приходящие на компьютер server.domain.com:

# ipchains –A output –f –d 192.168.1.1 –j DENY

14.3.3. Пинг смерти

Есть хорошая новость по этому поводу: ОС Linux невосприимчива к пингу смерти. Напомню, что пинг смерти заключается в посылке большого пакета ICMP, который переполняет буферы стека TCP на компьютере-получателе.

14.3.4. IР-спуфинг

IP-спуфинг — это отправление пакетов с поддельным IP-адресом источника. Так как фильтрация пакета принимает решения на основании адреса источника, то IP-спуфинг используется, чтобы ввести пакетный фильтр в заблуждение.

Для решения этой проблемы мы можем использовать Проверку Адреса Источника (Source Address Verification) или использовать следующие команды IPChains:

ipchains –A prov –s 192.168.1.1/16 –l –j DENY

ipchains –A prov –s 127.0.0.1/8 –l –j DENY

Вторая команда нужна для ядер версий 2.0.x, но если мы ее укажем, явно хуже не будет. Опция –l позволяет протоколировать «плохие» пакеты. Файлом протокола является /var/log/messages. Ядра версий 2.1.x автоматически отклоняют пакеты, приходящие с адресов 127.*, которые зарезервированы для локального интерфейса.

Для включения проверки адреса источника можно воспользоваться сценарием, представленном в листинге 14.2.

Листинг 14.2. Запрещение IР-спуфинга

# Наилучший способ: включить Source Address Verification и защитить

# от спуфинга все текущие и будущие интерфейсы.

if [ –e /proc/sys/net/ipv4/conf/all/rp_filter ] ; then

 echo –n "Установка защиты от спуфинга… "

 for f in /proc/sys/net/ipv4/conf/*/rp_fliter; do

echo 1 > $f

 done

 echo "готово."

else

 echo ПРОБЛЕМЫ ПРИ ПОПЫТКЕ ВКЛЮЧИТЬ ЗАЩИТУ ОТ СПУФИНГА.

 echo "Нажмите CONTROL-D для выхода в shell и продолжения сист. загрузки."

 echo

# Запуск однопользовательской оболочки на консоли

 /sbin/sulogin $CONSOLE

fi

Защита с использованием проверки адреса источника является более надежной.

Поделиться:
Популярные книги

Газлайтер. Том 26

Володин Григорий Григорьевич
26. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
5.40
рейтинг книги
Газлайтер. Том 26

Ключ для хранителя

Саринова Елена
1. Ключ для хранителя
Любовные романы:
любовно-фантастические романы
8.54
рейтинг книги
Ключ для хранителя

Война

Андрижески Дж. С.
6. Мост и Меч
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Война

Большая Советская Энциклопедия (ТЕ)

Большая Советская Энциклопедия
Справочная литература:
энциклопедии
5.00
рейтинг книги
Большая Советская Энциклопедия (ТЕ)

Легенда о Зигмаре (сборник)

Макнилл Грэм
Легенда о Зигмаре
Фантастика:
эпическая фантастика
боевая фантастика
5.00
рейтинг книги
Легенда о Зигмаре (сборник)

Ведьмак из Большого Киева (сборник)

Васильев Владимир Николаевич
Фантастика:
фэнтези
технофэнтези
5.00
рейтинг книги
Ведьмак из Большого Киева (сборник)

Лекарь Империи

Карелин Сергей Витальевич
1. Лекарь Империи
Фантастика:
городское фэнтези
аниме
дорама
фэнтези
попаданцы
5.00
рейтинг книги
Лекарь Империи

АН (цикл 11 книг)

Тарс Элиан
Аномальный наследник
Фантастика:
фэнтези
героическая фантастика
попаданцы
аниме
5.75
рейтинг книги
АН (цикл 11 книг)

Демократизация

Бернхаген Патрик
Научно-образовательная:
политика
6.00
рейтинг книги
Демократизация

Легенда о Рэндидли Гостхаунде 1

Voytsekhovskiy Evgeniy
1. Легенда о Рэндидли Гостхаунде
Фантастика:
постапокалипсис
фэнтези
5.00
рейтинг книги
Легенда о Рэндидли Гостхаунде 1

Я все еще князь. Книга XXI

Дрейк Сириус
21. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я все еще князь. Книга XXI

Молчун-Неучтённый фактор. Компиляция. Книги 1-22

Усманов Хайдарали
Собрание сочинений
Фантастика:
фэнтези
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Молчун-Неучтённый фактор. Компиляция. Книги 1-22

Газлайтер. Том 16

Володин Григорий Григорьевич
16. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
6.40
рейтинг книги
Газлайтер. Том 16

Лубянка и Кремль. Как мы снимали Хрущева

Семичастный Владимир Ефимович
Мемуары под грифом секретно
Документальная литература:
биографии и мемуары
5.00
рейтинг книги
Лубянка и Кремль. Как мы снимали Хрущева