LINUX-сервер пошаговые инструкции инсталляции и настройки - Бруй В. В. , Карлов С. В
..pdfГлава 10. GIPTables Firewall – программное обеспечение для настройки IPTables |
141 |
В случае прихода нежелательных пакетов они задерживаются и регистрируются. Если система будет подвергнута атаке путем отправки на ее сетевые интерфейсы большого числа нежелательных пакетов, файл регистрации быстро заполнит все свободное дисковое пространство. Чтобы избежать этого, мы устанавливаем ограничение на количество сообщений в файлы регистрации с помощью параметров LOG_LIMIT и
LOG_LIMIT_BURST.
Параметр LOG_LIMIT_BURST
определяет максимальное число нежелательных пакетов, информация о которых заносится в файл регистрации в течение интервала времени, величина которого определяется числом, стоящим перед знаком "/", а единица измерения ключом, стоящим после (секунда - /second или /s, минута - /minute или /m, час - /hour или /h и день - /day или /d). Таким образом, пара значений параметров
NETWORK1_LOG_LIMIT="9/m" и NETWORK1_LOG_LIMIT_BURST="11" в рассмотренном примере оз-
начает, что в течение 9 минут в файл регистрации будут внесена информация не более чем об 11 первых нежелательных пакетах.
Регистрационная информация посылается в файл /var/log/messages.
Параметры, с помощью которых устанавливается запрет на установку любых соединений с определенных IP-адресов, содержатся в секции Network Ghouls:
#Network Ghouls
#Refuse any connection from problem sites
#The /etc/rc.d/rc.giptables.blocked file contains a list of ip addresses that
#will be blocked from having any kind of access to your server on all your
#interfaces if the next option is "yes"
NETWORK_GHOULS="yes"
#If you would like to block an ip address from having any kind of access
to
#your server on a specific interface, please use the options below
REFUSE_CONNECTION_IPADDR[0]="1.1.1.1"
INTERFACE0_REFUSE_CONNECTION[0]="yes"
INTERFACE1_REFUSE_CONNECTION[0]="yes"
NETWORK1_REFUSE_CONNECTION[0]="yes"
REFUSE_CONNECTION_IPADDR[1]="2.2.2.2"
INTERFACE0_REFUSE_CONNECTION[1]="yes"
INTERFACE1_REFUSE_CONNECTION[1]="yes"
NETWORK1_REFUSE_CONNECTION[1]="yes"
Для включения или отключения блокирования сетевых подключений с определенных IP-адресов используется параметр NETWORK_GHOULS="yes"/"no". Если установлено значение параметра – "yes", то установка любых сетевых соединений с IP-адресов, перечисленных в файле /etc/rc.d/rc.giptables.blocked, запрещается. Если установлено значение параметра "no", то список запрещенных IP-адресов игнорируется.
Параметры
REFUSE_CONNECTION_IPADDR[0] INTERFACE0_REFUSE_CONNECTION[0] NTERFACE1_REFUSE_CONNECTION[0]
NETWORK1_REFUSE_CONNECTION[0]
используются для ограничения установки сетевых соединений с нежелательными адресами только для определенных сетевых интерфейсов.
Для конфигурирования системы защиты от одного из видов DoS-атак – "SYN-flood" – используются параметры секции Syn-flood protection:
#Syn-flood protection
#Limit the number of incoming tcp connections
SYN_FLOOD_PROTECTION="yes"
142 |
Часть 2. Система сетевой защиты |
# Interface 0 incoming syn-flood protection
INTERFACE0_IN_SYN_FLOOD_PROTECTION="yes"
INTERFACE0_IN_TCP_CONN_LIMIT="1/s"
INTERFACE0_IN_TCP_CONN_LIMIT_BURST="3"
# Interface 1 incoming syn-flood protection
INTERFACE1_IN_SYN_FLOOD_PROTECTION="yes"
INTERFACE1_IN_TCP_CONN_LIMIT="3/s"
INTERFACE1_IN_TCP_CONN_LIMIT_BURST="5"
# Network 1 forwarded incoming syn-flood protection
NETWORK1_IN_SYN_FLOOD_PROTECTION="yes"
NETWORK1_IN_TCP_CONN_LIMIT="5/s"
NETWORK1_IN_TCP_CONN_LIMIT_BURST="7"
Установка значения параметра SYN_FLOOD_PROTECTION="yes" включает защиту от SYN-атак. Параметры
INTERFACE0_IN_TCP_CONN_LIMIT="1/s"
INTERFACE0_IN_TCP_CONN_LIMIT_BURST="3"
ограничивают минимально допустимое число пакетов (в рассматриваемом примере – три), пропускаемых через сетевой интерфейс в единицу времени (в рассматриваемом примере – за 1 секунду).
Для включения и конфигурирования проверки потенциально опасных входящих пакетов используются параметры раздела Sanity check:
# Sanity check
#
SANITY_CHECK="yes"
# Make sure NEW incoming tcp connections are SYN packets
INTERFACE0_IN_DROP_NEW_WITHOUT_SYN="yes"
INTERFACE1_IN_DROP_NEW_WITHOUT_SYN="yes"
NETWORK1_IN_DROP_NEW_WITHOUT_SYN="yes"
# Drop all incoming fragments
INTERFACE0_IN_DROP_ALL_FRAGMENTS="yes"
INTERFACE1_IN_DROP_ALL_FRAGMENTS="yes"
NETWORK1_IN_DROP_ALL_FRAGMENTS="yes"
# Drop all incoming malformed XMAS packets
INTERFACE0_IN_DROP_XMAS_PACKETS="yes"
INTERFACE1_IN_DROP_XMAS_PACKETS="yes"
NETWORK1_IN_DROP_XMAS_PACKETS="yes"
# Drop all incoming malformed NULL packets
INTERFACE0_IN_DROP_NULL_PACKETS="yes"
INTERFACE1_IN_DROP_NULL_PACKETS="yes"
NETWORK1_IN_DROP_NULL_PACKETS="yes"
Установка значения параметра SANITY_CHECK="yes" включает проверку.
Параметры INTERFACE0_IN_DROP_NEW_WITHOUT_SYN="yes" INTERFACE1_IN_DROP_NEW_WITHOUT_SYN ="yes"
NETWORK1_IN_DROP_NEW_WITHOUT_SYN="yes"
используются для включения режима, в котором проверяется наличие SYN-бита у всех новых входящих пакетов, новые пакеты без SYN-бита фильтруются, информация о них запоминается в файле регистрации.
Параметры
INTERFACE0_IN_DROP_ALL_FRAGMENTS="yes"
Глава 10. GIPTables Firewall – программное обеспечение для настройки IPTables |
143 |
INTERFACE1_IN_DROP_ALL_FRAGMENTS="yes"
NETWORK1_IN_DROP_ALL_FRAGMENTS="yes"
используются для включения режима, в котором отфильтровываются и регистрируются все некорректные пакеты.
Параметры
INTERFACE0_IN_DROP_XMAS_PACKETS="yes"
INTERFACE1_IN_DROP_XMAS_PACKETS="yes"
NETWORK1_IN_DROP_XMAS_PACKETS="yes"
используются для включения режима, в котором отфильтровываются и регистрируются все некорректные
XMAS-пакеты.
Параметры
INTERFACE0_IN_DROP_NULL_PACKETS="yes"
INTERFACE1_IN_DROP_NULL_PACKETS="yes"
NETWORK1_IN_DROP_NULL_PACKETS="yes"
используются для включения режима, в котором отфильтровываются и регистрируются все NULL-пакеты, обычно генерируемые программами-сканерами портов.
В заголовках пакетов содержатcя исходный адрес, адрес назначения и тип протокола сообщения (ICMP, UDP или TCP). Наличие в заголовках пакетов исходного адреса и использование его для идентификации отправителя может быть использовано и для получения несанкционированного доступа к системе. Существует, по крайней мере, семь разновидностей исходных адресов, которые должны отфильтровываться внешним (ориентированным в сторону Интернет) интерфейсом (адреса, зарезервированные для локальных сетей, интерфейса возвратной петли и неиспользуемые Интернет адреса).
Для включения и конфигурирования фильтрации пакетов на внешнем интерфейсе системы исполь-
зуйте параметры секции Spoofing and bad addresses.
# Spoofing and bad addresses
#
REFUSE_SPOOFING="yes"
# Refuse incoming packets claiming to be from the ip addresses of our interfaces
REFUSE_SPOOFING_IPADDR[0]=$INTERFACE0_IPADDR
INTERFACE0_IN_REFUSE_SPOOFING[0]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[0]="yes"
NETWORK1_IN_REFUSE_SPOOFING[0]="yes"
REFUSE_SPOOFING_IPADDR[1]=$INTERFACE1_IPADDR
INTERFACE0_IN_REFUSE_SPOOFING[1]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[1]="yes"
NETWORK1_IN_REFUSE_SPOOFING[1]="yes"
#Refuse incoming packets claiming to be from broadcast-src address range
REFUSE_SPOOFING_IPADDR[2]="0.0.0.0/8"
#If you provide DHCP services on one of your interfaces, do not forget
to
#set the following option related to that interface to "no"
INTERFACE0_IN_REFUSE_SPOOFING[2]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[2]="yes"
NETWORK1_IN_REFUSE_SPOOFING[2]="yes"
# Refuse incoming packets claiming to be from reserved loopback address range
REFUSE_SPOOFING_IPADDR[3]="127.0.0.0/8"
INTERFACE0_IN_REFUSE_SPOOFING[3]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[3]="yes"
NETWORK1_IN_REFUSE_SPOOFING[3]="yes"
# Refuse incoming packets claiming to be from class A private network
144 |
Часть 2. Система сетевой защиты |
REFUSE_SPOOFING_IPADDR[4]="10.0.0.0/8"
INTERFACE0_IN_REFUSE_SPOOFING[4]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[4]="yes"
NETWORK1_IN_REFUSE_SPOOFING[4]="yes"
# Refuse incoming packets claiming to be from class B private network
REFUSE_SPOOFING_IPADDR[5]="172.16.0.0/12"
INTERFACE0_IN_REFUSE_SPOOFING[5]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[5]="yes"
NETWORK1_IN_REFUSE_SPOOFING[5]="yes"
# Refuse incoming packets claiming to be from class C private network
REFUSE_SPOOFING_IPADDR[6]="192.168.0.0/16"
INTERFACE0_IN_REFUSE_SPOOFING[6]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[6]="yes"
NETWORK1_IN_REFUSE_SPOOFING[6]="yes"
# Refuse incoming packets claiming to be from class D, E, and unallocated
REFUSE_SPOOFING_IPADDR[7]="224.0.0.0/3"
INTERFACE0_IN_REFUSE_SPOOFING[7]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[7]="yes"
NETWORK1_IN_REFUSE_SPOOFING[7]="yes"
Параметры:
REFUSE_SPOOFING_IPADDR[0], INTERFACE0_IN_REFUSE_SPOOFING[0], INTERFACE1_IN_REFUSE_SPOOFING[0], NETWORK1_IN_REFUSE_SPOOFING[0], REFUSE_SPOOFING_IPADDR[1], INTERFACE0_IN_REFUSE_SPOOFING[1], INTERFACE1_IN_REFUSE_SPOOFING[1],
NETWORK1_IN_REFUSE_SPOOFING[1]
используются для регистрации и фильтрации входящих пакетов, отправленных якобы с нашего IP-адреса на внутренний и внешние сетевые интерфейсы системы.
Параметры:
REFUSE_SPOOFING_IPADDR[2], INTERFACE0_IN_REFUSE_SPOOFING[2], INTERFACE1_IN_REFUSE_SPOOFING[2],
NETWORK1_IN_REFUSE_SPOOFING[2]
используются для регистрации и фильтрации входящих пакетов, адресуемых на широковещательные адреса. Если вы используете DHCP-сервер для автоматического распределения IP-адресов в локальной сети, или ваш провайдер выделяет динамический адрес при подключении к Интернет, не следует включать фильтрацию пакетов, адресуемых на широковещательные адреса.
Параметры:
REFUSE_SPOOFING_IPADDR[3], INTERFACE0_IN_REFUSE_SPOOFING[3], INTERFACE1_IN_REFUSE_SPOOFING[3],
NETWORK1_IN_REFUSE_SPOOFING[3]
используются для регистрации и фильтрации входящих пакетов, отправляемых якобы из диапазона адресов возвратной петли.
Параметры:
REFUSE_SPOOFING_IPADDR[4], INTERFACE0_IN_REFUSE_SPOOFING[4], INTERFACE1_IN_REFUSE_SPOOFING[4], NETWORK1_IN_REFUSE_SPOOFING[4], REFUSE_SPOOFING_IPADDR[5], INTERFACE0_IN_REFUSE_SPOOFING[5], INTERFACE1_IN_REFUSE_SPOOFING[5], NETWORK1_IN_REFUSE_SPOOFING[5],
Глава 10. GIPTables Firewall – программное обеспечение для настройки IPTables |
145 |
REFUSE_SPOOFING_IPADDR[6], INTERFACE0_IN_REFUSE_SPOOFING[6], INTERFACE1_IN_REFUSE_SPOOFING[6], NETWORK1_IN_REFUSE_SPOOFING[6], REFUSE_SPOOFING_IPADDR[7], INTERFACE0_IN_REFUSE_SPOOFING[7], INTERFACE1_IN_REFUSE_SPOOFING[7],
NETWORK1_IN_REFUSE_SPOOFING[7]
используются для регистрации и фильтрации входящих пакетов, отправляемых якобы с адресов, зарезервированных для сетей класса А,В,С,D,E и неиспользуемых IP-адресов.
Конфигурирование совместной работы GIPTables Firewall с различными службами
В GIPTables Firewall имеются модули, обеспечивающие нормальное функционирование типовых служб. Эти файлы находятся в каталоге /lib/giptables/modules и имеют имя вида giptaplesservice. Модули загружаются только, если это предусмотрено (т. е. строки, разрешающие использование соответствующих служб, имеются в наличии и раскомментированы) в файле giptables.conf. Вы можете определить, на каком сетевом интерфейсе, в какой сети и с какими соединениями будет работать служба. Для получения списка модулей, наберите:
[root@bastion |
/]# ls –l /lib/giptables/modules |
|
|
||||
-rw------- |
1 |
root |
root |
7230 |
Фев |
3 |
11:16 giptables-ANY |
-rw------- |
1 |
root |
root |
9199 |
Фев |
3 |
11:16 giptables-AUTH |
-rw------- |
1 |
root |
root |
5465 |
Фев |
3 |
11:16 giptables-DHCP |
-rw------- |
1 |
root |
root |
13936 |
Фев |
3 |
11:16 giptables-DNS |
-rw------- |
1 |
root |
root |
7833 |
Фев |
3 |
11:16 giptables-FINGER |
-rw------- |
1 |
root |
root |
12626 |
Фев |
3 |
11:16 giptables-FTP |
-rw------- |
1 |
root |
root |
7639 |
Фев |
3 |
11:16 giptables-HTTP |
-rw------- |
1 |
root |
root |
7746 |
Фев |
3 |
11:16 giptables-HTTPS |
-rw------- |
1 |
root |
root |
10299 |
Фев |
3 |
11:16 giptables-ICMP |
-rw------- |
1 |
root |
root |
7651 |
Фев |
3 |
11:16 giptables-IMAP |
-rw------- |
1 |
root |
root |
7755 |
Фев |
3 |
11:16 giptables-IMAPS |
-rw------- |
1 |
root |
root |
7596 |
Фев |
3 |
11:16 giptables-LDAP |
-rw------- |
1 |
root |
root |
7755 |
Фев |
3 |
11:16 giptables-LDAPS |
-rw------- |
1 |
root |
root |
7537 |
Фев |
3 |
11:16 giptables-LPD |
-rw------- |
1 |
root |
root |
7763 |
Фев |
3 |
11:16 giptables-MSSQL |
-rw------- |
1 |
root |
root |
7748 |
Фев |
3 |
11:16 giptables-MYSQL |
-rw------- |
1 |
root |
root |
6145 |
Фев |
3 |
11:16 giptables-NETBIOS |
-rw------- |
1 |
root |
root |
7652 |
Фев |
3 |
11:16 giptables-NNTP |
-rw------- |
1 |
root |
root |
7755 |
Фев |
3 |
11:16 giptables-NNTPS |
-rw------- |
1 |
root |
root |
7525 |
Фев |
3 |
11:16 giptables-NTP |
-rw------- |
1 |
root |
root |
7945 |
Фев |
3 |
11:16 giptables-ORACLE |
-rw------- |
1 |
root |
root |
7636 |
Фев |
3 |
11:16 giptables-POP3 |
-rw------- |
1 |
root |
root |
7748 |
Фев |
3 |
11:16 giptables-POP3S |
-rw------- |
1 |
root |
root |
8108 |
Фев |
3 |
11:16 giptables- |
POSTGRES |
|
|
|
|
Фев |
|
|
-rw------- |
1 |
root |
root |
7608 |
3 |
11:16 giptables-SMTP |
|
-rw------- |
1 |
root |
root |
7761 |
Фев |
3 |
11:16 giptables-SMTPS |
-rw------- |
1 |
root |
root |
7719 |
Фев |
3 |
11:16 giptables-SNMP |
-rw------- |
1 |
root |
root |
7761 |
Фев |
3 |
11:16 giptables-SOCKS |
-rw------- |
1 |
root |
root |
7787 |
Фев |
3 |
11:16 giptables-SQUID |
-rw------- |
1 |
root |
root |
7569 |
Фев |
3 |
11:16 giptables-SSH |
-rw------- |
1 |
root |
root |
7834 |
Фев |
3 |
11:16 giptables-SYSLOG |
-rw------- |
1 |
root |
root |
7832 |
Фев |
3 |
11:16 giptables-TELNET |
-rw------- |
1 |
root |
root |
7953 |
Фев |
3 |
11:16 giptables-TELNETS |
-rw------- |
1 |
root |
root |
7367 |
Фев |
3 |
11:16 giptables- |
TRACEROUTE |
|
|
|
|
Фев |
|
|
-rw------- |
1 |
root |
root |
7476 |
3 |
11:16 giptables-VNC |
|
-rw------- |
1 |
root |
root |
8152 |
Фев |
3 |
11:16 giptables- |
WEBCACHE |
|
|
|
|
Фев |
|
|
-rw------- |
1 |
root |
root |
7728 |
3 |
11:16 giptables-WHOIS |
|
-rw------- |
1 |
root |
root |
7529 |
Фев |
3 |
11:16 giptables-X11 |
146 |
Часть 2. Система сетевой защиты |
GIPTables Firewall по умолчанию реализует концепцию безопасности «все, что не разрешено – то запрещено". Поэтому для обеспечения нормальной работы службы необходимо внести соответствующие изменения в конфигурационный файл giptables.conf. В качестве примера разрешим работу MySQLсервера на системе с одним внешним сетевым интерфейсом.
Шаг 1
Разрешите использования модуля для MySQL, для этого добавьте или раскомментируйте строку:
ACCEPT_MYSQL="yes"
Шаг 2
Добавьте или раскомментируйте строки, разрешающие клиентские запросы к MySQL-серверу:
INTERFACE0_MYSQL_SERVER="yes" INTERFACE0_MYSQL_IN_SRC_IPADDR[0]=$ANY_IPADDR INTERFACE0_MYSQL_IN_DST_IPADDR[0]=$INTERFACE0_IPADDR
Шаг 3
Для того, чтобы изменения вступили в силу, перегрузите GIPTables Firewall:
[root@bastion /]# /etc/init.d/giptables restart
Настройка GIPTables Firewall для шлюза (прокси-сервера)
Практика показывает, что наибольшее количество вопросов у начинающих пользователей возникает при настройке шлюза. Ниже приведены пошаговые инструкции его настройки и пример конфигурационного файла для GIPTables Firewall, за основу которого взят конфигурационный файл
/lib/giptables/conf/giptables.conf.gateway (комментарии на русском языке добавлены авто-
рами). Предложенная конфигурация шлюза организует, так называемый маскарадинг (masquerading), при реализации которого компьютеры из внутренней сети имеют доступ в Интернет, но полностью скрыты для внешней сети и не имеют официально зарегистрированных интернет-адресов.
Шаг 1 Разрешите пересылку пакетов между внутренним и внешним интерфейсом (по умолчанию эта опция
отключена). Для этого в файле /etc/sysctl.conf замените строку:
net.ipv4.ip_forward = 0
на:
net.ipv4.ip_forward = 1
Для вступления изменений в силу перезагрузите сеть:
[root@bastion /]# /etc/init.d/network restart
Деактивируется |
интерфейс eth0: |
[ОК] |
||
Деактивируется |
интерфейс-петля: |
[ОК] |
||
Устанавливаются параметры сети: |
[ОК] |
|||
Активируется |
интерфейс |
loopback: |
[ОК] |
|
Активируется |
интерфейс |
eth0: |
[ОК] |
|
Тот же самый эффект может быть достигнут и без перезагрузки сети:
[root@bastion /]# sysctl -w net.ipv4.ip_forward = 1 |
|
||
Шаг 2 |
|
|
|
Скопируйте |
файл |
/lib/giptables/conf/giptables.conf.gateway |
в |
/lib/giptables/conf/giptables.conf и создайте ссылку:
[root@bastion /]# cp /lib/giptables/conf/giptables.conf.gateway
/lib/giptables/conf/giptables.conf
[root@bastion /]# ln -s /lib/giptables/conf/giptables.conf etc/giptables.conf
Шаг 3
Отредактируйте файл /lib/giptables/conf/giptables.conf в соответствии с рекомендациями приведенного ниже примера, вашими потребностями и конфигурацией сети. Особое внимание обратите на корректировку фрагментов, выделенных жирным шрифтом.
Для этого можно воспользоваться командой:
[root@bastion /]# vi /etc/giptables.conf
#-----------------------------------------------------------------------
#GIPTables Firewall v1.1 http://www.giptables.org
Глава 10. GIPTables Firewall – программное обеспечение для настройки IPTables |
147 |
#Copyright (C) 2002 Adrian Pascalau <apascalau@openna.com>
#GATEWAY main configuration file
#
# -----------------------------------------------------------------------
-
#This file is part of GIPTables Firewall
#GIPTables Firewall is free software; you can redistribute it and/or modify
#it under the terms of the GNU General Public License as published by
#the Free Software Foundation; either version 2 of the License, or
#(at your option) any later version.
#
#This program is distributed in the hope that it will be useful,
#but WITHOUT ANY WARRANTY; without even the implied warranty of
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#GNU General Public License for more details.
#
#You should have received a copy of the GNU General Public License
#along with this program; if not, write to the Free Software
#Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# -----------------------------------------------------------------------
-----
# DEBUG
#
DEBUG="off"
# -----------------------------------------------------------------------
-----
#Some definitions for easy maintenance
#Edit these to suit your system
#Если вы следовали нашим рекомендациям, то код iptables включен в код ядра.
MONOLITIC_KERNEL="yes"
#Interface 0: This is our external network interface
#It is directly connected to Internet
#Установите параметры внешнего интерфейса.
INTERFACE0="eth0" INTERFACE0_IPADDR="x.x.x.x" ANY_IPADDR="0/0"
#Interface 1: This is our internal network interface
#It is directly connected to our internal Network 1
#Проверьте, правильно ли указаны параметры внутренней сети.
INTERFACE1="eth1"
INTERFACE1_IPADDR="192.168.1.254"
NETWORK1="192.168.1.0/24"
#Do you need Network Address Translation for your internal network?
NETWORK1_NAT="yes"
#Your name servers ip address
#Установите правильные значения IP-адресов ваших DNS-серверов.
#Использование чужих DNS–серверов - плохой тон !!!
ISP_PRIMARY_DNS_SERVER="a.a.a.a"
ISP_SECONDARY_DNS_SERVER="b.b.b.b"
# SYSLOG server ip address
148 |
Часть 2. Система сетевой защиты |
#Если для хранения файлов регистрации используется шлюз - что не очень
#хорошо с точки зрения безопасности - укажите IP-адрес внутреннего
#интерфейса. Если же файлы регистрации хранятся на другой системе внутри
#локальной сети, то укажите ее IP-адрес.
SYSLOG_SERVER="c.c.c.c"
# Loopback interface
LOOPBACK_INTERFACE="lo" |
# Loopback interface |
# Port declarations, do not change them
PRIV_PORTS="0:1023"
UNPRIV_PORTS="1024:65535"
# -----------------------------------------------------------------------
# Loading custom firewall rules from /etc/rc.d/rc.giptables.custom
#
#Если вы следовали нашим рекомендациям, то /etc/rc.d/rc.giptables.custom
#не содержит никаких дополнительных правил. Если в последующем они будут
#созданы и добавлены, не забудьте изменить значение параметра на "yes".
LOAD_CUSTOM_RULES="no"
# -----------------------------------------------------------------------
#Logging
#Limit the amount of incoming dropped packets that gets sent to the logs
#Ниже выставляются параметры, устанавливающие разумный компромисс
#между объемом файлов регистрации и информативностью. Не советуем
#изменять значения этих параметров.
#We log & drop all the packets that are not expected. In order to avoid
#our logs beeing flooded, we rate limit the logging
#Interface 0 log dropped packets
INTERFACE0_LOG_DROPPED_PACKETS="yes"
INTERFACE0_LOG_LIMIT="5/m"
INTERFACE0_LOG_LIMIT_BURST="7"
# Interface 1 log dropped packets
INTERFACE1_LOG_DROPPED_PACKETS="yes"
INTERFACE1_LOG_LIMIT="7/m"
INTERFACE1_LOG_LIMIT_BURST="9"
# Network 1 log forwarded dropped packets
NETWORK1_LOG_DROPPED_PACKETS="yes"
NETWORK1_LOG_LIMIT="9/m"
NETWORK1_LOG_LIMIT_BURST="11"
# -----------------------------------------------------------------------
-
#Network Ghouls
#Refuse any connection from problem sites
#The /etc/rc.d/rc.giptables.blocked file contains a list of ip addresses that
#will be blocked from having any kind of access to your server on all your
#interfaces if the next option is "yes"
#Если вы следовали нашим рекомендациям, то
/etc/rc.d/rc.giptables.blocked
Глава 10. GIPTables Firewall – программное обеспечение для настройки IPTables |
149 |
#не содержит никаких IP-адресов, доступ с которых к вашей системе запрещен.
#Если в последующем они будут добавлены, не забудьте изменить значение
#параметра на "yes".
NETWORK_GHOULS="no"
# ----------------------------------------------------------------------
#Syn-flood protection
#Limit the number of incoming tcp connections
#Защита от Syn-flood атак. Не советуем изменять значения этих
#параметров.
SYN_FLOOD_PROTECTION="yes"
# Interface 0 incoming syn-flood protection
INTERFACE0_IN_SYN_FLOOD_PROTECTION="yes"
INTERFACE0_IN_TCP_CONN_LIMIT="1/s"
INTERFACE0_IN_TCP_CONN_LIMIT_BURST="3"
# Interface 1 incoming syn-flood protection
INTERFACE1_IN_SYN_FLOOD_PROTECTION="yes"
INTERFACE1_IN_TCP_CONN_LIMIT="3/s"
INTERFACE1_IN_TCP_CONN_LIMIT_BURST="5"
# Network 1 forwarded incoming syn-flood protection
NETWORK1_IN_SYN_FLOOD_PROTECTION="yes"
NETWORK1_IN_TCP_CONN_LIMIT="5/s"
NETWORK1_IN_TCP_CONN_LIMIT_BURST="7"
# -----------------------------------------------------------------------
---
#Sanity check
#Фильтрация «некорректных» пакетов. Не советуем изменять значения этих
#параметров.
SANITY_CHECK="yes"
# Make sure NEW incoming tcp connections are SYN packets
INTERFACE0_IN_DROP_NEW_WITHOUT_SYN="yes"
INTERFACE1_IN_DROP_NEW_WITHOUT_SYN="yes"
NETWORK1_IN_DROP_NEW_WITHOUT_SYN="yes"
# Drop all incoming fragments
INTERFACE0_IN_DROP_ALL_FRAGMENTS="yes"
INTERFACE1_IN_DROP_ALL_FRAGMENTS="yes"
NETWORK1_IN_DROP_ALL_FRAGMENTS="yes"
# Drop all incoming malformed XMAS packets
INTERFACE0_IN_DROP_XMAS_PACKETS="yes"
INTERFACE1_IN_DROP_XMAS_PACKETS="yes"
NETWORK1_IN_DROP_XMAS_PACKETS="yes"
# Drop all incoming malformed NULL packets
INTERFACE0_IN_DROP_NULL_PACKETS="yes"
INTERFACE1_IN_DROP_NULL_PACKETS="yes"
NETWORK1_IN_DROP_NULL_PACKETS="yes"
150 Часть 2. Система сетевой защиты
#-----------------------------------------------------------------------
# Spoofing and bad addresses
#
REFUSE_SPOOFING="yes"
# Refuse incoming packets claiming to be from the ip addresses of our interfaces
#Разрешаем пересылку пакетов между наружным и внешним интерфейсом,
#локальной и внешней сетями.
REFUSE_SPOOFING_IPADDR[0]=$INTERFACE0_IPADDR
INTERFACE0_IN_REFUSE_SPOOFING[0]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[0]="no"
NETWORK1_IN_REFUSE_SPOOFING[0]="yes"
REFUSE_SPOOFING_IPADDR[1]=$INTERFACE1_IPADDR
INTERFACE0_IN_REFUSE_SPOOFING[1]="no"
INTERFACE1_IN_REFUSE_SPOOFING[1]="yes"
NETWORK1_IN_REFUSE_SPOOFING[1]="no"
#Refuse incoming packets claiming to be from broadcast-src address range REFUSE_SPOOFING_IPADDR[2]="0.0.0.0/8"
#If you provide DHCP services on one of your interfaces, do not forget
to
#set the following option related to that interface to "no"
INTERFACE0_IN_REFUSE_SPOOFING[2]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[2]="no"
NETWORK1_IN_REFUSE_SPOOFING[2]="yes"
# Refuse incoming packets claiming to be from reserved loopback address range
REFUSE_SPOOFING_IPADDR[3]="127.0.0.0/8"
INTERFACE0_IN_REFUSE_SPOOFING[3]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[3]="yes"
NETWORK1_IN_REFUSE_SPOOFING[3]="yes"
#Фильтруем пакеты, отправленные якобы с адресов, зарезервированных
#для локальных сетей. Очень важно не отфильтровать пакеты, приходящие
#из локальной сети на внутренний сетевой интерфейс.
#Refuse incoming packets claiming to be from class A private network
#Если вы используете локальную сеть класса A, то измените значения
#параметров:
#INTERFACE0_IN_REFUSE_SPOOFING[4]="yes"
#INTERFACE1_IN_REFUSE_SPOOFING[4]="no"
#NETWORK1_IN_REFUSE_SPOOFING[4]="no"
REFUSE_SPOOFING_IPADDR[4]="10.0.0.0/8"
INTERFACE0_IN_REFUSE_SPOOFING[4]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[4]="yes"
NETWORK1_IN_REFUSE_SPOOFING[4]="yes"
#Refuse incoming packets claiming to be from class B private network
#Если вы используете локальную сеть класса B, то измените значения
#параметров:
#INTERFACE0_IN_REFUSE_SPOOFING[5]="yes"
#INTERFACE1_IN_REFUSE_SPOOFING[5]="no"
#NETWORK1_IN_REFUSE_SPOOFING[5]="no"
REFUSE_SPOOFING_IPADDR[5]="172.16.0.0/12"
INTERFACE0_IN_REFUSE_SPOOFING[5]="yes"
INTERFACE1_IN_REFUSE_SPOOFING[5]="yes"
