Организация безопасности сети предприятия с использованием операционной системы Linux

Автор работы: Пользователь скрыл имя, 03 Декабря 2011 в 17:59, реферат

Краткое описание

Атака на права доступа - когда кто-нибудь пытается получить права доступа или добраться до специальных учетных записей пользователей в системе, которыми ему не разрешено пользоваться. Это может быть рассержено пользователь, который пытается получить права доступа пользователя root (Администратор), чтобы притворить неприятности, или же кто-то из внешней сети, которая делает попытки получить доступ к файлам. Количество атак можно уменьшить, но Администратор, который заботится о защите, виновной предотвращать появление очевидных дыр в защите.

Содержимое работы - 1 файл

безопасность в комп сетях.doc

— 522.50 Кб (Скачать файл)

     Параметры определения правил

     Параметры ipchains создают правила, определяя, какие  типы пакетов отвечают критериям. Если каждой йз этих параметров опущений из спецификации правила, он предусматривается  за умалчиванием.

     -p [!]protocol

     Указывает протокол, который отвечает правилу. Допустимо имена протоколов tcp, udp, icmp или all. Можно задать номер протокола  для протоколов, которые здесь  не определены. Например, 4 для протокола ipip. Если задан префикс!, правило превращается в негативное, и принимаются все пакеты, которые не отвечают этому протоколу. Значение за умалчиванием: all.

     -s [!]address[/mask] [!] [port] Указывает исходная адреса и порт, из которого пришел пакет. Адреса может задавать имя машины, имя сети или IP-адреса. Опция mask задает сетевую маску. Она может быть задана в обычной форме (например, /255.255.255.0) или в новой (например, /24). Опция port задает порт TCP или UDP, или тип пакетов ICMP. Вы можете задать спецификацию порта только, если задали параметр -p с одним из протоколов tcp, udp или icmp. Порты могут быть определены как диапазон, определяя верхние и нижние границі йз двоеточием как разделитель. Например, 20:25 определяет порты с 20 по 25 включительно. Символ! превращает правило в полную его противоположность.

     -d [!]address[/mask] [!] [port]

     Задает  адреса и порт назначения. Во всем другому  аналогичный параметру -s.

     -j target Указывает, что делать при срабатывании правила. Допустимые действия: ACCEPT, DENY, REJECT, REDIR и RETURN. Раньше я уже описав значение каждого действия. Вы можете также задать имя обусловленной пользователем цепочки, в которой продлится обработка. Если этот параметр опущений, будут только изменены данные пакетов и счетчиков, но ничего йз этим пакетом сделано не будет.

     -и  [!]interface-name

     Задает  интерфейс, из которого пришел пакет, или  через какой пакет будет передан. Символ! переворачивает результат сравнения. Если имя интерфейса кончается на +, ему будут отвечать все интерфейсы, имена которых начинаются на заданий строка. Например, -ые ppp+ совпадает со всеми PPP-интерфейсами, а -ые! eth+ отвечает всем интерфейсам, кроме Ethernet.

     [!] –f Указывает, что это правило применяется к первому фрагменту фрагментированного пакета.

     Опции

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

     -b Генерирует сразу два правила. Первое точно отвечает заданным параметрам, вторую делает теми же именно, но прямо противоположными параметрами.

     -v Предлагает ipchains выдавать подробную информацию.

     -n Предлагает ipchains использовать IP-адреса и порты, не пытаясь превратить их в имена.-l

     Включает  протокол ядра о соответствии пакетов. Любой пакет, который отвечает правилу, будет запротоколирован ядром, используя  его функцию printk(), что обрабатывается программой sysklogd. Это удобно для выявления необычных пакетов.

     -о[maxsize] Вынуждает IP chains копировать все подходящим правилам пакеты в устройство “netlink”. Параметр maxsize ограничивает число байтов из кожного пакета, которые будут переданы на устройство netlink. Эта опция имеет большое значение для розроблювачів, но может эксплуатироваться пакетами користувальницьких программ в будущем.

     -m markvalue

     Все пакеты, которые удовлетворяют правилам, повинны быть обозначенные. Метка  есть 32-бітним чмслом без знака. Пока эта опция ничего не делает, но в будущем она может определять, как пакет будет обработан другим программным обеспечением типа кода маршрутизации. Если метка начинается из + или -, ее значение буедт прибавлено или відняте из существующие.

     -t andmask xormask

     Позволяет управление битами TOS (“type of service”) в  заглавии IP любого пакета, который удовлетворяет  правилам. Биты типа сервиса используются интеллектуальными маршрутизаторами для расположения пакетов перед  отправлением в соответствии с их приоритетом. andmask и xormask задают разрядные маски, которые будут использованы в логических операциях AND и OR с битами типа сервиса. Это продвинуто свойство, которое более обстоятельно описано в IPCHAINS-HOWTO.

     -x Любые числа у вывода ipchains будут точными (округление не используется).

     -в Задает правило, которое будет отвечать любому пакету TCP с установленным битому SYN и неустановленными битами ACK и FIN. Это используется, чтобы фильтровать TCP-запросы.

     Пример: Опять допустим, что ми имеем сеть в нашей организации, и используем Linux firewall для предоставления доступу к нашим серверам WWW из Internet, но при этом хотим блокировать любой другой трафик. 

     ipchains:

     # ipchains -F forward

     # ipchains -P forward DENY

     # ipchains -A forward -s 0/0 80 -d 172.16.1.0/24 -p tcp -у -j DENY

     # ipchains -A forward -s 172.16.1.0/24 -d 0/0 80 -p tcp -b -j ACCEPT 

     Если  ми теперь хотим прибавить правила, какие предоставят только пассивный  режим доступа к FTP-серверу снаружи  сети, ми прибавим правила:  

     # ipchains -A forward -s 0/0 20 -d 172.16.1.0/24 -p tcp -у -j DENY

     # ipchains -A forward -s 172.16.1.0/24 -d 0/0 20 -p tcp -b -j ACCEPT

     # ipchains -A forward -s 0/0 21 -d 172.16.1.0/24 -p tcp -у -j DENY

     # ipchains -A forward -s 172.16.1.0/24 -d 0/0 21 -p tcp -b -j ACCEPT 

     Чтобы перечислить наши правила в команде ipchains, используется параметр -L argument. Точно  как из ipfwadm, там могут быть заданы аргументы, которые позволять детализировать вывод. В самом простом случае ipchains выведет что-то вроде бы:  

     # ipchains -L -n

     Chain input (policy ACCEPT):

     Chain forward (policy DENY): 

target prot opt source destination ports
DENY TCP -y---- 0.0. 0.0/0 172.16. 1.0/24 80 -> *
ACCEPT TCP ------ 0.0. 0.0/0 172.16. 1.0/24 80 -> *
ACCEPT TCP ------ 172.16. 1.0/24 0.0. 0.0/0 * -> 20
ACCEPT TCP ------ 0.0. 0.0/0 172.16. 1.0/24 20 -> *
ACCEPT TCP ------ 172.16. 1.0/24 0.0. 0.0/0 * -> 21
ACCEPT TCP ------ 0.0. 0.0/0 172.16. 1.0/24 21 -> *
 

     Если  Вы не указали имя цепочки, ipchains выведет  все правила йз всех цепочек. В  нашем примере параметр -n сообщает ipchains, чтобы той не превратил бу-яку  адресу или порт во имя.

     Netfilter Обратная совместимость из ipfwadm и ipchains

     Прекрасная  гибкость Linux netfilter иллюстрируется способностью наследовать интерфейсов ipfwadm и ipchains. Эмуляция делает переход к новому поколению программного обеспечения firewall немного проще.

     Два модуля ядра из netfilter с именами ipfwadm.o и ipchains.o обеспечивают обратную совместимость из ipfwadm и ipchains. Можно загрузить одновременно только один из этих модулей и использовать его только при условии, что модуль ip_tables.o не загруженный. Когда соответствующий модуль загружен, netfilter работает аналогично заданной реализации firewall.

     Чтобы netfilter копировал интерфейс ipchains скомандуйте:  

     # rmmod ip_tables

     # modprobe ipchains

     # ipchains 

     Использование iptables

     Утилита iptables используется для настройки  правил netfilter. Синтаксис заимствован  в ipchains, но имеет важное отличие: он расширился. Значат, что функциональные возможности могут быть расширены без перекомпиляции пакета. Для этого используются поділювані библиотеки. Есть стандартные расширения, ряд которых ми в настоящий момент выучим.

     Перед использованием команды iptables Вы должны загрузить модуль ядра netfilter, что позволяет ей работать. Проще всего сделать это командой modprobe: # modprobe ip_tables

     Команда iptables используется для настройки IP filter и Network Address Translation. Для этого используются две таблицы: filter и nat. Если не задана опция -t, используется таблица filter. Доступные пять убудованих цепочек (наборов правил): INPUT и FORWARD для таблицы filter, PREROUTING и POSTROUTING для таблицы nat и OUTPUT для всех таблиц.

     Как и раньше, ми допускаем, что есть сеть какой-то организации, на Linux-машине запущен firewall. Все внутренние пользователи имеют доступ к WWW-серверам в Internet, но и только.

     Если  сеть использует сетевую маску у 24 бита (класс C) и имеет адресу сети 172.16.1.0, нужно использовать правила iptables:  

     # modprobe ip_tables

     # iptables -F FORWARD

     # iptables -P FORWARD DROP

     # iptables -A FORWARD -m tcp -p tcp -s 0/0 -іsport 80 -d 172.16.1.0/24 / -іsyn -j DROP

     # iptables -A FORWARD -m tcp -p tcp -s 172.16.1.0/24 -іsport / 80 -d 0/0 -j ACCEPT

     # iptables -A FORWARD -m tcp -p tcp -d 172.16.1.0/24 -іdport 80 -s 0/0 -j / ACCEPT 

     В этом примере iptables работает точно как  команда ipchains. Вся разница в том, что нужно предварительно загрузить  модуль ip_tables.o. Обратите внимание, что iptables не поддерживает опцию -b, так что ми должны отдельно задать правило для кожного направления.

     Типы  пакетов ICMP

     Каждая  из команд конфигурации firewall позволяет определять типы пакетов ICMP. В отличие от портов TCP и UDP, нет никакого удобного файла конфигурации, которая перечисляет типы пакетов и их значения. Типы пакетов ICMP определены в RFC-1700 (Assigned Numbers RFC). Они также перечислены в одном из стандартных библиотечных файлов C. Файл /usr/include/netinet/ip_icmp.h, что принадлежит обычной библиотеке GNU и используется C-программистами при написании сетевого программного обеспечения, которое работает йз протоколом ICMP, также определяет типы пакетов ICMP. Для удобства я они отображены в таблице 9-2. Интерфейс команды iptables позволяет определять типы ICMP по их именам, так что я укажу и эти имена. Позже они придадуться. 

     Таблица №5.4

     Типы  пакетов ICMP

Номер типа Позначення iptables Опис
0 echo-reply Echo Reply 
3 destination-unreachable Destination Unreachable
4 source-quench Source Quench
5 redirect Redirect
8 echo-request Echo Request
11 time-exceeded Time Exceeded
12 parameter-problem Parameter Problem
13 timestamp-request  Timestamp Request
14 timestamp-reply Timestamp Reply
15 none  Information Request
16 none Information Reply 
17 address-mask-request Address Mask Request
18 address-mask-reply Address Mask Reply

Информация о работе Организация безопасности сети предприятия с использованием операционной системы Linux