L
i n u x P a r k
при поддержке ВебКлуба |
Назад | Оглавление | Вперед |
Кто-нибудь может мне сказать, почему я должен использовать коммерческий
брандмауэр, а не простой в использовании Ipchains? Что я теряю используя
Ipchains? Ipchains хорош и становится все лучше и лучше, чем коммерческие
продукты с точки зрения поддержки и функциональных возможностей. Вы, скорее
всего, будете лучше понимать процессы происходящие в вашей сети, если будете
использовать Ipchains, а не его коммерческий аналоги.
Что такое политика безопасности сетевого брандмауэра.
Политика безопасности сетевого брандмауэра определяет те сервисы, которые будут явно разрешены или запрещены, как они будут использоваться и какие исключения будут из этих правил. Полная политика защиты организации должна быть определена согласно анализу безопасности и деловой необходимости. Брандмауэр имеет небольшое значение, если полная политика защиты не определена должным образом. Каждое правило определенное в политика безопасности сетевого брандмауэра должно быть реализовано на брандмауэре. В общем все брандмауэры используют следующие методы:
Все, что специально не разрешено – запрещено.
Этот метод блокирует весь трафик между двумя сетями, за исключением
тех сервисов и приложений которым выдано разрешение. Поэтому каждую необходимую
службу и приложение нужно разрешать. Никогда нельзя разрешать работу тем
службам и приложениям, которые могут быть использованы для атаки на вашу
систему. Это наиболее безопасный метод – отвергать все, что явно не разрешено.
С другой стороны, со стороны пользователя, этот метод более ограничительный
и менее удобный. Именно его мы будем использовать для построения брандмауэра
в этой книге.
Все, что не запрещено, то разрешено.
Этот метод позволяет весь трафик между сетями, за исключением определенных
сервисов и приложений. Поэтому каждую ненужную службу надо явно запрещать.
Это очень удобный и гибкий метод для пользователей, но несущий в себе серьезные
потенциальные проблемы в безопасности.
Что такое пакетный фильтр?
Пакетный фильтр - это тип брандмауэра созданного на основе ядра Linux. Он работает на сетевом уровне. Данным позволяется остаться в системе, если это разрешено правилами. Проходящие пакеты фильтруются по типу, адресу источника, адресу получателя и по порту. В большинстве случаев фильтрация пакетов осуществляется на маршрутизаторе, который перенаправляет пакеты согласны правилам фильтрации. Когда пакет приходит на фильтрующий маршрутизатор, тот извлекает информацию из заголовка пакета и принимает решение согласно правилам фильтрации об пересылке или уничтожении пакета. Из заголовка пакета может извлекаться следующая информация:
Все сервера должны быть настроены так, чтобы блокировать все неиспользуемые порты. Это необходимо для большей безопасности. Представьте себе, что кто-то сумел проникнуть на ваш брандмауэр: если соседние сервера не настроены на блокирование неиспользуемых портов, то это может привести к серьезным проблемам в безопасности. То же истинно и для локальных соединений: неправомочные служащие могут получить доступ на ваши сервера из внутренней части.
В нашей конфигурации мы дадим вам три различных примера, которые помогут
вам настроить ваши правила брандмауэра в зависимости от типа сервера и
его размещения в вашей сети. Первый пример будет для Веб сервера, второй
для почтового сервера и третий для Шлюза, который действует как сервер-
посредник (proxy server) для внутренних Wins машин, рабочих станций и серверов.
Кэширующий DNS 208.164.186.3 |
Мастер DNS сервер 208.164.186.1 |
Slave DNS сервер 208.164.186.2 |
|
|
|
Эта таблица показывает, какие порты я должен открыть на различных серверах. В зависимости от того, какой сервис должен быть доступен на сервере, вы должны настроить скрипт брандмауэра на разрешение трафика к определенному порту. www.openna.com – наш Веб сервер, mail.openna.com – это наш почтовый сервер для всех внутренних сетей и deep.openna.com – это шлюз в всех примеров объясненных в этой главе.
ЗАМЕЧАНИЕ. Если при создание ядра вы использовали материалы из главы 3 книги, то все необходимые опции (“Network firewalls, IP:Firewalling, and IP:TCP syncookie support”) были отмечены.
Константы, используемые в примере скрипта firewall-а.
EXTERNAL_INTERFACE
Это имя внешнего сетевого интерфейса, обращенного в Интернет. В нашем
примере это eth0.
LOCAL_INTERFACE_1
Это имя интерфейса подключенного к внутренней сети LAN. В нашем примере
это eth1.
LOOPBACK_INTERFACE
Это имя loopback интерфейса. В нашем примере это lo.
IPADDR
Это IP адрес вашего внешнего интерфейса. Это или статический адрес
зарегистрированный в InterNIC, или динамический адрес присвоенный вашим
ISP (обычно, через DHCP).
LOCALNET_1
Это адрес вашей локальной сети (LAN), если любой – полный диапазон
IP адресов, используемых машинами в вашей сети. Они могут быть статически
присвоенными, или могут назначаться локальным DHCP сервером. В нашем примере,
диапазон адресов представляет собой часть сети класса C – 192.168.1.0/24.
ANYWHERE
Это обозначение адреса, который ipchains воспринимает как любая машина
(не широковещательный адрес). Обе программы предоставляют метку any/0 для
подобного адреса, который равен 0.0.0.0/0.
NAMESERVER_1
Это IP адрес Primary DNS сервера из вашей сети или вашего ISP.
NAMESERVER_2
Это IP адрес Secondary DNS сервера из вашей сети или вашего ISP.
MY_ISP
Это диапазон адресов вашего ISP & NOC. Это значение используется
firewall-ом для разрешения запросов ICMP ping и traceroute. Если вы не
определите это диапазон, то будет запрещено посылать ping в Интернет из
вашей локальной сети.
LOOPBACK
Диапазон адресов loopback равен 127.0.0.0/8. Интерфейс непосредственно
адресован как 127.0.0.1 (в файле /etc/hosts).
PRIVPORTS
Привилегированные порты, обычно, с 0 по 1023.
UNPRIVPORTS
Непривилегированные порты, обычно, с 1024 по 65535. Они определяются
на динамически на стороне клиента соединения.
Default Policy
Брандмауэр имеет предопределенную линию поведения и собирает действия,
которые нужно предпринять в ответ на определенные типы сообщений. Это означает,
что если пакет не попал ни под одно из правил, то к нему применяется правило
по умолчанию.
ЗАМЕЧАНИЕ. Люди, которые динамически получают адреса от ISP могут
включить следующие две строки в описания firewall-а. Эти строки определяют
IP адрес интерфейса ppp0 и адрес сети удаленного ppp сервера.
IPADDR=`/sbin/ifconfig | grep -A
4 ppp0 | awk '/inet/ { print $2 } ' | sed -e s/addr://`
MY_ISP=`/sbin/ifconfig | grep -A
4 ppp0 | awk '/P-t-P/ { print $3 } ' | sed -e s/P-t-P:// | cut -d '.' -f
1-3`.0/24
Существует по крайней мере семь адресов на внешнем интерфейсе от которых необходимо отказаться. К ним относятся:
Замечание. Не забудьте исключить ваш собственный IP адрес из списка исходящих блокируемых пакетов. По умолчанию, я исключаю приватные адреса класса C, так как они наиболее часто используются большинством людей сегодня. Если вы использовали другой класс вместо C, то вы должны раскомментировать соответствующие строки в секции “SPOOFING & BAD ADDRESSES” файла конфигурации файрвола.
Назад | Оглавление | Вперед |