Вход/Регистрация
Linux глазами хакера
вернуться

Флёнов Михаил Евгеньевич

Шрифт:

А ведь можно проблему решить одной строкой. Для этого нужно использовать следующее правило:

ipchains -I input 1 -р tcp -s ! 192.168.77.10 telnet -j DENY

В данной команде мы запрещаем (ключ

– j DENY
) подключение по протоколу TCP (
– p tcp
) всем пакетам, у которых адрес источника (ключ
– s
) не равен 192.168.77.10. Символ "!" выступает как знак неравенства, т.е. фильтру будут соответствовать все пакеты, в которых источник не равен указанному.

Такая запись эффективна, если по умолчанию все разрешено. В противном случае пакет от компьютера 192.168.77.10 будет все равно удален.

Знак "!" можно использовать и перед указанием номера порта. Например, нужно разрешить с адреса 192.168.77.12 полный доступ к серверу, .кроме порта telnet. Тогда по умолчанию делаем запрет всего и открываем доступ только компьютеру 192.168.77.12:

ipchains -I input 1 -р tcp -s 192.168.77.12 ! telnet -j ACCEPT

Данная строка разрешает подключение по протоколу TCP компьютеру с адресом 192.168.77.12 на любые порты за исключением telnet, потому что перед именем порта стоит восклицательный знак.

4.11.5. Ограничение сети

В крупных сетях описывать каждый компьютер очень сложно. Для облегчения этой задачи можно использовать групповые записи. Например, вам надо разрешить выход в Интернет только для сети 192.168.1.x (с маской 255.255.255.0). Это значит, что первые 24 бита (первые три октета) адреса соответствуют идентификатору сети, а последние 8 бит (последнее число) — это номер компьютера в ней. Чтобы разрешить доступ для всей сети, можно выполнить команду:

ipchains -I input 1 -р tcp -s 192.168.1.0/24 -j ACCEPT

В данном случае в качестве адреса указано значение 192.168.1.0/24. После слэша как раз идет количество бит, которые определяют адрес сети. Это значит, что все компьютеры в этой сети попадают под данный фильтр.

Существуют три основных класса сетей, которые отличаются количеством бит, отведенных под адрес. Чтобы вам было проще, приведу эту классификацию:

□ A — первые 8 бит определяют адрес сети. В такой сети используются адреса в диапазоне 01.0.0.0 до 126.0.0.0;

□ B — первые 12 бит определяют адрес сети. В такой сети используются адреса в диапазоне от 128.0.0.0 до 191.255.0.0;

□ C — первые 16 бит определяют адрес сети. В такой сети используются адреса в диапазоне от 192.0.1.0 до 223.255.255.0.

Существуют и исключения, которые мы рассматривали в разд. 4.10.2. Если вы не сталкивались раньше с TCP-протоколом, то я советую познакомиться с ним сейчас. Это поможет вам в администрировании вашей системы.

4.11.6. ICMP-трафик

Самым сложным для многих администраторов является управляющий протокол ICMP, который по стандарту RFC 792 требуется для работы протокола TCP/IP. Но в жизни не всегда придерживаются стандартов, и TCP/IP может работать на компьютерах, где ICMP запрещен.

Протокол TCP жестко прошивают в наши головы, и с ним сталкиваются любые пользователи, потому что TCP наиболее распространен. Протокол UDP по своим характеристикам схож с TCP, поэтому тут тоже особых проблем не возникает. А вот ICMP мало кому знаком и его даже бояться. Бытует мнение, что его проще и лучше полностью запретить, но это не так.

Протокол ICMP позволяет двум узлам в сети совместно использовать информацию об ошибках. Проходящие через него пакеты предназначены не определенной программе, а компьютеру в целом, поэтому у него нет портов. Зато есть тип и код. Эти параметры протокола можно увидеть, если выполнить команду:

ipchains -h icmp

Пакеты ICMP, чаще всего, рассылаются в ответ на нештатные ситуации. Основные типы и коды, которые доступны для управления, можно увидеть в табл. 4.1.

Таблица 4.1. Основные коды и типы ICMP-пакетов

Тип Код Описание
0 0 echo-reply — такие пакеты используются для проверки связи с компьютером через утилиту ping
3 0–7 destination-unreachable — пакеты этого типа указывают на недоступность адресата. В зависимости от кода можно получить уточненные данные: • 0 — недоступна сеть; • 1 — недоступен компьютер; • 2 — недоступен протокол; • 3 — недоступен порт; • 4 — требуется фрагментация; • 6 — неизвестная сеть; • 7 — неизвестный компьютер
8 0 echo-request — такие пакеты используются при проверке связи с компьютером через утилиту ping и запрашивают ответ от хоста
9 и 10 0 Сообщения такого типа рассылают маршрутизаторы
12 1 Неправильный IP-заголовок
12 2 Требуемые опции отсутствуют

При создании правила тип ICMP-сообщения указывается так же, как и порт для TCP-протокола, а код — помещается после ключа

– d
. Например, следующая строка запретит ICMP-пакеты третьего типа с кодом 1:

ipchains -I output 1 -р icmp -s 192.168.8.1 3 -d 1 -j DENY

Некоторые администраторы уделяют недостаточное внимание ICMP-протоколу. Это ошибка, потому что таким путем было совершено уже достаточно много атак, к тому же хакер может с помощью сообщений ICMP передавать даже TCP-трафик, используя туннелирование.

  • Читать дальше
  • 1
  • ...
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

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