IT-К@ФЕ. Welcome! :)
   
Добро пожаловать, Гость
Логин: Пароль: Запомнить меня


Cетевой экран - своими руками.
(1 чел.) (1) гость
  • Страница:
  • 1

ТЕМА: Cетевой экран - своими руками.

Cетевой экран - своими руками. 2 года, 2 мес. назад #36

  • Aleksej
  • Вне сайта
  • Moderator
  • Постов: 1738
  • Репутация: 40
Логика построения защиты

Данная статья иллюстрирует процесс настройки ipchains в Linux.
Правда, на сегодняшний день актуальным является использование iptables; но - синтаксис изменился несильно, и логика та же.


Прежде всего -
1. Необходимо удалить существующие правила фильтрации.

ipchains -F

2. Ну что ж, поехали. Начнем с того, что запретим все:

ipchains -P input DENY
ipchains -P output REJECT
ipchains -P forward REJECT


В скобках; обратите внимание на первое правило. Для входящего трафика не разрешено уведомление о недоставке пакета (в противном случае имели бы брешь для атаки).

3. И для начала разрешим loopback.

ipchains - A input -i $LOOPBACK_INTERFACE -j ACCEPT
ipchains - A output -i $LOOPBACK_INTERFACE -j ACCEPT


Опции:
A - правило помещается в конец цепочки
i - определяет сетевой интерфейс,
j - действие.

4. Теперь - запрещаем прохождение пакетов с фальсифицированными адресами.
Т.е. -
пакеты, якобы отправленные с внешнего интерфейса нашего шлюза.
пакеты, содержащие в качестве исходящего адреса - loopback.
пакеты, содержащие в качестве исходящего адреса - адреса, входящие в диапазоны, выделенные для использования во внутренних сетях (A, B и С).
пакеты, содержащие в качестве адреса назначения - адреса из A, B и С.
пакеты, содержащие недопустимые широковещательные адреса.
(0.0.0.0 и 255.255.255.255).
пакеты, содержащие адреса группового вещания, применимы лишь в качестве адреса назначения:

ipchaines -A input -i $EXTERNAL_INTERFACE -s $CLASS_D_MULTICAST -j DENY -1
ipchaines -A output -i $EXTERNAL_INTERFACE -s $CLASS_D_MULTICAST -j REJECT -1


Опция 1 определяет логгирование исполнения правила.

5. Теперь - фильтрация ICMP сообщений - Echo Replay, Destination Ureachable и т.д. Необходимо решить, что именно - оставить, а что - запретить.

6. Далее - разрешаем протоколы высших уровней. FTP, HTTP, почтовые протоколы, DNS и др.

ipchains -A input -i $EXTERNAL_INTERFACE -p udp -s $IPADDR $UNPRIVPORTS -d $NAMESERVER 53 -j ACCEPT
ipchains -A output -i $EXTERNAL_INTERFACE -p udp -s $IPADDR $UNPRIVPORTS -d $NAMESERVER 53 -j ACCEPT
ipchains -A input -i $EXTERNAL_INTERFACE -p tcp -s $IPADDR $UNPRIVPORTS -d $NAMESERVER 53 -j ACCEPT
ipchains -A output -i $EXTERNAL_INTERFACE -p tcp -s $IPADDR $UNPRIVPORTS -d $NAMESERVER 53 -j ACCEPT


Разрешим сервера имен (53 порт, входящие и исходящие, tcp и udp).
IPADDR - адрес компа
UNPRIVPORTS - непривилегированные порты.

И, наконец - маршрутизация (в случае, когда необходимо соединить несколько подсетей) и masquerade.

ipchains -A forward -I $EXTERNAL_INTERFACE -s LAN-1 -j MASQ
Изменено: 2 года, 2 мес. назад от Aleksej.

Re: Cетевой экран - своими руками. 1 год, 6 мес. назад #414

  • unior
  • Вне сайта
  • Junior Boarder
  • Постов: 29
  • Репутация: 1
Aleksej писал(а):
Данная статья иллюстрирует процесс настройки ipchains в Linux.


Сильно ли отличаются ipchains и iptables?

Re: Cетевой экран - своими руками. 1 год, 6 мес. назад #415

  • Aleksej
  • Вне сайта
  • Moderator
  • Постов: 1738
  • Репутация: 40
Логика та же.
Изменился ряд имен действий и внутренняя реализация.

Фильтрация пакетов

Таблицы iptables
  • Страница:
  • 1
Время создания страницы: 0.23 секунд