Курсова робота
Пакетний фільтр. Ефективний захист комп’ютерних мереж.
Зміст
1. Брандмауер з фільтрацією пакетів
1.1 Вибір політики за замовчуванням
1.2 Фільтрація вхідних пакетів
1.3 Фільтрація на основі адреси джерела
1.4 Фільтрація на основі адреси призначення
1.5 Фільтрація на основі порту джерела
1.6 Фільтрація на основі порту призначення
1.7 Фільтрація на основі інформації про стан TCP-з’єднання
3. Додаткові питання фільтрації пакетів
3.3 Фільтрація вихідних пакетів
3.4 Фільтрація на основі адреси джерела
3.5 Фільтрація на основі адреси призначення
3.6 Фільтрація на основі порту джерела
3.7 Фільтрація на основі порту призначення
3.8 Фільтрація за значеннями прапорів стану
4. Доступ до служб локальної мережі
5. Вибір серверів для установки в системі
6. Принципи роботи брандмауерів
6.1 Характеристики брандмауерів
Вступ
Термін брандмауер може набувати різні значення в залежності від принципу, покладеного в основу роботи засобів захисту, мережної архітектури і схеми маршрутизації. Брандмауери звичайно підрозділяють на три типи: брандмауер з фільтрацією пакетів, прикладний шлюз і універсальний proxy-сервер.
Брандмауер з фільтрацією пакетів, як правило, діє на мережному і транспортному рівнях і реалізується в складі операційної системи. Вихідною інформацією для фільтрації є вміст заголовків IP-пакетів, на основі якого брандмауер приймає рішення, по якому маршруті варто направити пакет.
Прикладний шлюз, чи шлюз додатків реалізується за допомогою вибору мережної архітектури і конфігурації системи. Мережний трафик ніколи не проходить через комп’ютер, на якому виконується прикладний шлюз. Щоб звернутися в Internet, локальний користувач повинен зареєструватися на прикладному шлюзі. Комп’ютер, що містить прикладний шлюз, може бути захищений брандмауерами з фільтрацією пакетів як ззовні, так і з локальної мережі.
Proxy-сервер (чи брандмауер-посередник) звичайно реалізується у виді незалежного додатка, що керує доступом до різних типів мережних служб. Для клієнтів proxy-сервер виконує роль сервера, а для серверів є клієнтом-програмою. Замість того щоб безпосередньо звертатися до вилучених серверів, спеціальним способом сформовані клієнти-програми, які звертаються до proxy. Прийнявши звертання клієнта, ргоху-сервер установлює зв’язок з вилученим вузлом, але вже не від імені клієнта, а від свого, при цьому він заміняє в пакеті адреса клієнта своєю адресою. Подібний сервер може контролювати цілісність даних, здійснювати перевірку на наявність вірусів і забезпечувати виконання правил системної політики, що визначають обмін високорівневими даними.
Всі описані типи брандмауерів керують доступом до служб. Кожен підхід має свої переваги перед іншими. Комерційні продукти, що реалізують брандмауери, як правило, являють собою сполучення засобів, призначених для фільтрації пакетів, організації прикладних шлюзів і роботи як універсальний proxy-сервер. Дана курсова в основному присвячена брандмауерам з фільтрацією пакетів.
1. Брандмауер з фільтрацією пакетів
Брандмауер з фільтрацією пакетів являє собою сукупність засобів, які реалізують набір дозволених і заборонених правил. Ці правила визначають, які пакети можуть проходити через конкретний мережний інтерфейс. На основі аналізу інформації, що міститься в заголовку пакета, брандмауер приймає рішення, чи варто переслати пакет на вузол призначення, видалити пакет, не приймати ніяких додаткових дій, або повернути передавальному комп’ютеру повідомлення про помилку. Правила, що визначають долю пакетів, складають для кожної мережної карти, у них враховуються IP-адреси джерела і призначення, номера портів TCP і UDP, прапори TCP-з’єднань, типи ICMP-повідомлень. Звичайно правила для вхідних і вихідних пакетів розрізняються.
Як правило, брандмауер установлюється для того, щоб контролювати дані, якими комп’ютери обмінюються з Internet. Дані, що надходять ззовні фільтруються; у результаті чого відсіваються неприпустимі звертання до вузлів мережі. Аналогічно відбувається перевірка інформації, переданої з внутрішньої мережі в Internet.
При настроюванні комп’ютера правила для конкретного мережного інтерфейсу зручно представляти як пари введення / виведення. Тому що вхідні і вихідні пакети обробляються незалежно один від одного, процеси фільтрації вхідних і даних керуються різними наборами правил. Списки правил, що керують фільтрацією пакетів, що надходять ззовні в локальну мережу і відправляються з локальної мережі в Internet, прийнято називати ланцюжками. Термін ланцюжок використовується тому, що при перевірці пакета правила застосовуються послідовно одне за одним, поки список правил не буде вичерпаний. Таким чином, пари введення / виведення — це вхідна (input) і вихідна (output) ланка, одна з них виявляє собою набір правил для вхідних, а інша - для вихідних даних.
Описаний механізм досить ефективний, однак він не забезпечує безпеки локальної мережі. Це усього лише одна з ланок загальної схеми захисту. Аналіз заголовків пакетів — операція занадто низького рівня для того, щоб реально виконувати аутентифікацію і контролювати доступ. У процесі фільтрації пакетів практично неможливо розпізнати відправника повідомлення і проаналізувати зміст переданої інформації. З усього набору даних, придатних для аутентифікації, на розглянутому рівні доступна тільки IP-адреса відправника, однак цю адресу дуже легко підмінити. Незважаючи на те що засоби фільтрації пакетів дозволяють ефективно контролювати звертання до портів, використання протоколів обміну і вміст пакетів, перевірку даних необхідно продовжити на більш високому рівні.
Однак процес фільтрації пакетів не можна недооцінювати. Без нього високорівнева фільтрація і робота брандмауера – посередника будуть неефективні, а можливо, і некоректні. Засоби захисту, що працюють на визначеному рівні мережної моделі, повинні спиратися на результати роботи процедур нижче розміщених рівнів.
1.1 Вибір політики за замовчуванням
Кожен ланцюжок являє собою набір правил, заданих явно, і політику за замовчуванням. Пакет перевіряється на відповідність кожному з явно зазначених правил; правила вибираються зі списку послідовно доти, поки не буде виявлена відповідність пакета одному з них. Якщо пакет не задовольняє жодному з явно заданих правил, починаються дії, визначені політикою за замовчуванням.
При побудові брандмауерів використовуються два основних підходи.
1. Забороняється проходження всіх пакетів; пропускаються лише ті, які задовольняють визначеним правилам.
2. Дозволяється проходження всіх пакетів, за винятком пакетів, що задовольняють визначеним правилам.
На практиці рекомендується використовувати підхід, при якому пакет, що надходить, за замовчуванням відкидається. У цьому випадку необхідний рівень безпеки досягається досить просто, але приходиться передбачати можливість звертання до кожної мережної служби і використання кожного конкретного протоколу. Це означає, що фахівець, що займається настроюванням брандмауера, повинен чітко уявляти собі, які протоколи застосовуються при звертанні до конкретних сервісних засобів. При використанні підходу, що передбачає заборону за замовчуванням, приходиться вживати спеціальних заходів кожен раз, коли необхідно дозволити Internet-доступ, проте в деяких комерційних брандмауерах передбачена лише політика такого типу.
Політика дозволу за замовчуванням дозволяє домогтися роботи системи малими зусиллями, але при цьому необхідно передбачити кожен конкретний випадок, при якому потрібно заборонити доступ. Подібний підхід сполучений з визначеною небезпекою для локальної мережі. Може статися так, що необхідність внесення додаткових заборон стане зрозумілою лише тоді, коли в результаті несанкціонованого доступу мережі буде нанесений значну шкоду. Крім того, не виключено, що ви установите нову службу, не заблокувавши попередньо доступ до неї. Таким чином, якщо ви виберете політику дозволу за замовчуванням, вам доведеться виконувати великий обсяг роботи з адміністрування брандмауера, крім того, імовірність помилки істотно збільшиться.
1.2 Фільтрація вхідних пакетів
У невеликих локальних мережах при настроюванні брандмауерів основна увага звичайна приділяється вхідному ланцюжку, зв’язаної з зовнішнім мережним інтерфейсом. Як було сказано вище, при фільтрації пакетів враховуються адреса джерела, адреса призначення, порт джерела, порт призначення і прапори, що визначають стан ТСР-з’єднання. У наступних розділах докладно розглядаються дані, що можуть міститися в зазначених полях і рішення, прийняті брандмауером.
1.3 Фільтрація на основі адреси джерела
На рівні фільтрації пакетів єдиний спосіб ідентифікації відправника – перевірка IP-адреси джерела в заголовку пакета. Обмежені можливості брандмауера надають широкі можливості для фальсифікації пакетів, при якій відправник заміняє свою адресу в заголовку пакета іншим значенням. Для підміни може бути обрана неіснуюча чи реальна адреса, що належить іншому вузлу. Це дозволяє зловмиснику незаконно проникнути у вашу систему чи атакувати інші вузли, ховаючись під вашим ім’ям. При цьому спроби простежити джерело повідомлень направляються по помилковому сліді.
1.4 Фільтрація на основі адреси призначення
У більшості випадків фільтрація на основі адреси призначення виконується автоматично. Мережний інтерфейс просто ігнорує пакети, не адресовані безпосередньо йому. Виключенням є широкомовні пакети, адресовані усім вузлам мережі.
Адреса 255.255.255.255 являє собою загальну широкомовну адресу. Ви можете визначити широкомовну адресу для конкретної мережі, додавши до номера мережі необхідну кількість десяткових чисел 255. Припустимо, наприклад, що номер мережі вашого провайдера 192.168.0.0, а ваша IP-адреса 192.168.10.30. У цьому випадку широкомовна адреса буде мати вид 192.168.255.255 або 255.255.255.255.
Широкомовний пакет, спрямований за адресою 0.0.0.0, безсумнівно фальсифікований. Ціль передачі такого пакета — ідентифікувати версію UNIX. У відповідь на такий пакет система UNIX версії BSD передає ICMP-повідомлення про помилку з кодом 3. Приведений приклад може служити додатковим аргументом при виборі між забороною (deny) і відмовленням у проходженні (reject) пакета. У даному випадку повідомлення про помилку і є та інформація про систему, що прагне одержати зломщик.
1.5 Фільтрація на основі порту джерела
Номер порту джерела, що міститься в заголовку пакета, призначений для ідентифікації програми-відправника повідомлення, що виконується на вилученому вузлі. У запитах вилучених клієнтів вашому серверу містяться різні номери портів, а у відповідях сервера клієнтам — той самий порт.
У складі запиту вилученого клієнта вказується непривілейований порт. Так, наприклад, номер порту в запиті до Web-сервера повинний лежати в діапазоні від 1024 до 65535.
У відповіді вилученого сервера повинний бути зазначений порт, виділений для конкретної мережної служби. Якщо ви звернулися до вилученого Web-сервера, то в його відповіді буде міститися номер вихідного порту, рівний 80. Цей порт використовується HTTP-серверами.
1.6 Фільтрація на основі порту призначення
Порт призначення визначає програму на вашому комп’ютері, який призначений пакет. У запитах вилучених клієнтів, переданих на сервер, міститься той самий порт призначення, а у відповідях сервера клієнтам – різні номери портів.
У пакеті, що містить звертання клієнта до сервера, знаходиться номер порту, виділений для забезпечення роботи конкретного типу мережної служби. Так, наприклад, пакет, спрямований Web-серверу, містить номер порту 80. У відповідях вилучених серверів на запити клієнта міститься непривілейований номер порту в діапазоні від 1024 до 65535.
1.7 Фільтрація на основі інформації про стан TCP-з’єднання
У деяких правилах обробки пакетів використовуються прапори, що визначають стан TCP-з’єднання. Будь-яке з’єднання проходить через визначені стани. Стани клієнта і сервера розрізняються між собою.
У першому пакеті, відправленому вилученим клієнтом, установлений прапор SYN (прапор АСК скинутий). Передача такого пакета є першим кроком у встановленні TCP-з’єднання. В усіх наступних пакетах, переданих клієнтом, установлений прапор АСК, а прапор SYN скинутий. Як правило, брандмауери дозволяють проходження пакетів, що містять звертання клієнтів, незалежно від стану прапорів SYN і АСК.
Пакети, передані вилученими серверами, завжди є відповідями на попередні звертання клієнтів-програм. У кожнім пакеті,, що надійшов від вилученого сервера, повинний бути встановлений прапор АСК, оскільки TCP-з’єднання ніколи не встановлюється з ініціативи сервера.
2. Проба і сканування
Проба – це спроба установити з’єднання чи одержати відповідь при звертанні до конкретного порту. Сканування являє собою серію подібних спроб, початих для різних портів. Як правило, сканування виробляється з застосуванням автоматизованих засобів.
Самі по собі проби і сканування безпечні для системи. Більш того, єдиний спосіб визначити, чи підтримується на вузлі визначений тип служби, – звернутися до відповідного порту, тобто зробити пробу. Проте в більшості випадків проби і сканування є частиною цілого комплексу заходів для збору інформації, після чого звичайно випливає спроба злому системи. У 1998 році спостерігалося різке збільшення числа випадків сканування; у цей час одержали широке поширення автоматичні скануючі програми, а в процесі збору інформації брали участь цілі групи хакерів.
3. Додаткові питання фільтрації пакетів
Обробка пакетів з маршрутом до джерела і фрагментація безпосередньо не зв'язані з фільтрацією пакетів. Однак ці питання також відносяться до забезпечення безпеки і зважуються на системному рівні.
3.1 Маршрут до джерела
Протокол IP надає можливість безпосередньо вказати в складі пакета маршрут між двома комп'ютерами і позбавити проміжні маршрутизатори права приймати рішення про шлях проходження пакета. Маршрут у складі IP-пакета, подібно ІCMP-перенапрямленю, дозволяє хакеру “обманути” систему так, що вона буде приймати його комп’ютер за локальну машину, сервер провайдера чи інший вузол мережі, що користається довірою.
За замовчуванням Red Hat Linux 6.0 не обробляє пакети, що містять маршрут до джерела. Подібним чином можна сформувати і більш ранні версії системи, але для цього необхідно переформувати ядро. В даний час у процесі нормального обміну даними явна вказівка маршруту до джерела практично не використовується, і багато маршрутизаторів попросту ігнорують подібні пакети.
3.2 Фрагментація пакетів
У різних типах локальних мереж (наприклад, Ethernet, ATM, token ring) накладаються різні обмеження на довжину переданих кадрів. По шляху проходження пакета від джерела до приймача зустрічаються ділянки мереж, що підтримують кадри меншої довжини. Щоб передати дані через таку ділянку мережі, маршрутизатор змушений розбивати пакет на частини, називані фрагментами. Перший фрагмент пакета містить номера вихідного порту і порту призначення, у наступних фрагментах ці зведення відсутні.
Конфігурація комп’ютера, що виконує функції брандмауера, повинна бути обрана так, щоб пакети, розбиті на фрагменти, відновлювалися перед передачею на вузол призначення. Така конфігурація автоматично встановлюється в Red Hat 6.0. У попередніх версіях системи засобу дефрагментації повинні були бути явно включені перед компіляцією ядра.
3.3 Фільтрація вихідних пакетів
Якщо комп’ютери вашої локальної мережі і користувачі, що працюють за ними, заслуговують довіри, питання фільтрації вихідних пакетів не так важливі, як фільтрація пакетів, адресованих локальної мережі. Якщо брандмауер не пропускає небажані повідомлення, вузли локальної мережі не будуть передавати відповіді на них. Проте симетрична фільтрація забезпечує високий ступінь захисту. Якщо брандмауер фільтрує не тільки вхідні, але і вихідні пакети, вузли Internet захищені від помилок, що допускаються вашими користувачами.
Яку ж загрозу може представляти ваша локальна мережа для інших комп’ютерів, підключених до Internet? Якщо події будуть розвиватися найгіршим образом, може статися так, що зловмисник одержить доступ до вашої локальної мережі. При цьому фільтрація пакетів забезпечить визначений рівень захисту глобальної мережі, принаймні, доти, поки зловмиснику не потрапить у руки пароль root. Одержавши права суперкористувача, він зможе попросту відключити брандмауер.
Фільтрація вихідних повідомлень дозволить виключити влучення повідомлень, переданих по локальній мережі, у Internet. Варто помітити, що витік конфіденційної інформації може відбуватися не тільки внаслідок незаконного проникнення в систему, але й у результаті неправильного настроювання вузлів локальної мережі, при якій передані зведення безперешкодно проникають у Internet. До такого неконтрольованого поширення інформації може привести використання серверів dhcpd, timed, routed і rwhod. Служби wall і syslogd також не ідеальні з погляду безпеки системи.
Фільтрація вихідних пакетів дозволить припинити небажані звертання до серверів з вузлів локальної мережі. Джерелом таких звертань можуть бути неперевірені програми, що запускаються користувачами на їхніх комп’ютерах. Так, наприклад, програми, що застаріли, розроблені без обліку особливостей мережного середовища, можуть поводитися непередбачено на комп’ютері, підключеному до Internet.
3.4 Фільтрація на основі адреси джерела
Сформувати правила фільтрації за адресою джерела нескладно. Якщо розміри локальної мережі невеликі, IP-адреса кожного з комп’ютерів точно відомий. Отже, правила фільтрації повинні бути побудовані так, щоб пакет, у якому зазначена адреса джерела, не співпадав з жодним з адресів комп’ютерів, не був пропущений брандмауером.
Якщо на вузлах локальної мережі встановлено кілька загальнодоступних серверів, ситуація ускладнюється. Якщо комп’ютеру, що виконує функції брандмауера, IP-адреса виділяється динамічно, фільтрація вихідних пакетів обов’язково повинна виконуватися.
3.5 Фільтрація на основі адреси призначення
Як було сказано вище, можлива ситуація, при якій вам буде потрібно обмежити передачу пакетів за межі локальної мережі адресами окремих мереж чи окремих комп’ютерів. Ці адреси чи діапазони адрес повинні бути зазначені в правилах, керуючих роботою брандмауера.
Перша категорія вихідних пакетів, що підлягають фільтрації, являє собою звертання до вилучених серверів. Деякі типи серверів, наприклад Web чи FTP, можуть розміщатися практично по будь-якій адресі, і доступ до них звичайно не обмежується. У той же час існують служби, звертання до яких повинні строго контролюватися. Як приклади можна привести поштовий сервер POP і службу DHCP, що динамічно розподіляє IP-адреси. Звичайно брандмауер набудовується так, що звертання до подібних служб дозволяється лише у випадку, якщо відповідні сервери розташовані на визначених вузлах з конкретними IP-адресами.
Друга категорія вихідних пакетів, оброблюваних у процесі фільтрації, – це відгуки локальних серверів на звертання до них вилучених клієнтів. І знову, якщо відповідь Web-сервера може бути спрямована практично будь-якому комп’ютеру, підключеному до Internet, то відповіді таких служб, як Telnеt, SSH і finger, повинні одержувати лише окремі вузли, що користаються довірою. Таким чином, брандмауер не тільки видаляє пакети, спрямовані деяким службам, але й обмежує число клієнтів, яким має право відповісти сервер.
3.6 Фільтрація на основі порту джерела
Перевірка портів, зазначених у заголовках пакетів, виконується як для клієнтів-програм, запущених у локальній мережі, так і для серверів. Така перевірка дозволяє переконатися в тім, що програми працюють коректно і захищають користувачів Internet від улучення на їхні комп’ютери графіка локальної мережі.
При звертанні локальних клієнтів до вилучених серверів у заголовку пакетів повинні міститися лише непривілейовані номери портів джерела. Перевірка номерів вихідних портів брандмауером забезпечує додатковий контроль правильності роботи програм.
Пакети, передані сервером, обов’язково повинні містити в заголовку порт джерела, що збігає з номером порту, виділеним для служби даного типу. Перевірка номера порту по суті являє собою перевірку роботи засобів підтримки протоколів. Контролюючи номера портів, брандмауер виключає несанкціоновані звертання до серверів і вилучення даних, призначених для передачі по локальній мережі, у Internet.
3.7 Фільтрація на основі порту призначення
Оскільки локальні клієнти можуть звертатися до вилучених серверів лише по конкретних номерах портів, фільтрація вихідних пакетів є одночасно засобом контролю за використанням протоколів. Це, по-перше, запобігає випадковим установленням з’єднань з помилково обраними серверами, а по-друге, не дає можливості користувачам локальної мережі проводити сканування портів вилучених комп’ютерів і впливати на них іншими способами.
Вилучені клієнти при встановленні з’єднань з вашими серверами використовують винятково непривілейовані порти, тому брандмауер повинний стежити, щоб у відповідях локальних серверів як порти призначення також указувалися порти з номерами 1024 і вище.
3.8 Фільтрація за значеннями прапорів стану
Як і при фільтрації вхідних пакетів, обробка вихідного пакета може виконуватися на основі значень прапорів, що визначають стан з’єднання. На різних етапах TCP-з’єднання стан клієнта і сервера змінюється.
У першому пакеті, що відправляється клієнтом у рамках конкретного TCP-з’єднання, установлений прапор SYN. В усіх наступних пакетах прапор SYN скинутий, але встановлений прапор АСК. Таким чином, при настроюванні брандмауера необхідно задати правило, відповідно до якого в пакетах, переданих клієнтом, повинний бути встановлений або прапор SYN, або АСК.
Пакети, передані серверами, являють собою відповіді на запити клієнтів. У кожнім з таких пакетів установлений прапор АСК. Цей факт також повинний бути відбитий у настроюваннях брандмауера.
4. Доступ до служб локальної мережі
Самий вірний спосіб спровокувати незаконне проникнення в систему – відкрити доступ з Internet до серверів, призначеним для використання в межах локальної мережі. Подібні сервери ні при яких обставинах не повинні бути “видимі” ззовні, тобто з Internet. Порушення цього правила переслідується неприємностями. Через такий сервер важлива інформація може потрапити в руки конкурентів, тому що програма, що підтримує роботу служби, може мати недоліки в системі захисту.
Одними з перших мережних служб можна вважати команди вилученого доступу, реалізовані в системі BSD. Вони були розроблені для зручності поділу ресурсів, при цьому вважалося, що комп’ютери, що беруть участь у процесі обміну, і користувачі, що працюють за ними, заслуговують повної довіри. Пізніше з’явилися сервісні засоби, спеціально призначені для роботи в Internet. У той час, коли вони розроблялися, Internet використовувалася в основному при проведенні наукових досліджень і являла собою відносно безпечне середовище. В даний час ситуація докорінно змінилася; Internet перетворилася в глобальну мережу, і питання забезпечення безпеки стали, мабуть, самими злободенними.
Багато служб, підтримувані в системі UNIX, надають інформацію про систему і користувачів. Звернувшись до відповідного серверу, можна довідатися про облікові записи користувачів, про тім, хто з них є власником програми, що виконується в системі, про стан системи і мережі, про використовувані ресурси і про інші вузли мережі. Звичайно, у відповідях серверів не містяться явні зведення про недоліки в системі захисту, однак інформація, що повертається у відповідь на запит, багато чого говорить досвідченому зломщику й істотно спрощує процес незаконного проникнення в систему. Крім того, у системі міститься інформація про користувачів – імена, адреси, номери телефонів, – яку ви навряд чи згодні зробити надбанням будь-якого бажаючих.
Найбільшу небезпеку представляють служби, призначені для організації доступу до поділюваних файлових систем і мережних пристроїв: принтерам, факсам-апаратам і т.д.
Деякі сервери, що працюють у локальній мережі, складні в настроюванні, особливо важко настроїти їх так, щоб забезпечити належний рівень захисту. Вибору конфігурації мережних служб присвячені спеціальні видання, а в даній книзі це не розглядається.
Деякі служби не підтримуються в невеликих локальних мережах і тим більше на домашніх комп’ютерах, область їхнього використання – корпоративні мережі. Як приклади таких сервісних засобів можна привести маршутизаторів, програмне забезпечення великих інформаційних центрів, засобу кодування даних і т.д.
4.1 Захист локальних служб
Найпростіший спосіб уберегтися від проникнення в систему за допомогою одного із серверів – зробити цей сервер недоступним з Internet. Варто помітити, що не всі сервери можна ефективно захистити засобами фільтрації пакетів. Як приклади служб, при організації захисту яких приходиться вирішувати безліч проблем, можна привести RealAudio і ICQ.
Один зі способів захистити служби, призначені для внутрішнього використання, – відмовитися від розміщення відповідних серверів на комп’ютерах, доступних із глобальної мережі. Якщо комп’ютер “не видний” з Internet, вилучений клієнт не має ніякої можливості звернутися до розмішеного на ньому серверу. Однак у невеликих мережах не завжди є можливість реалізувати таке рішення на практиці. Часто системний адміністратор просто не може виділити для роботи сервера окрему машину, недоступну ззовні. Тому в деяких випадках компроміси неминучі.
Для захисту сервера від звертань з Internet можна застосувати брандмауера, що виконує фільтрацію пакетів по порту призначення. Наявність такого брандмауера дозволяє запускати в локальній мережі велику кількість служб, не піддаючи серйозної небезпеки мережні ресурси.
Проте фільтрація пакетів не забезпечує повної безпеки. Для ряду програм приходиться застосовувати засоби захисту, що працюють на більш високих рівнях мережної взаємодії. Для деяких програм організувати захист настільки складно, що їхнє виконання на комп’ютері, що має з’єднання з Internet, неминуче сполучене з ризиком.
5. Вибір серверів для установки в системі
Одне з головних рішень, що відносяться до безпеки системи, – вибір серверів, що повинні бути встановлені на комп’ютері, що виконує роль брандмауера. Кожний із серверів по-своєму впливає на загальну безпеку системи, тому, вибираючи програми для роботи в UNIX, треба дотримувати наступного правила: установлювати лише ті сервери, що абсолютно необхідні для нормальної роботи мережі й особливості роботи яких ви добре собі представляєте. Перш ніж приступати до інсталяції програми, необхідно з’ясувати, які функції вона виконує і хто буде нею користатися.
У наступних розділах описані популярні сервери, що можуть бути запущені в системі Red Hat Linux. В описі служб приведені рекомендації щодо того, як і на якому етапі системи повинні бути запущені відповідні програми.
Існують три способи запуску програм, що реалізують мережні служби, у системі UNIX. Основна частина серверів автоматично запускається при завантаженні операційної системи під керуванням диспетчера рівнів виконання. Порядок запуску вказується в сценаріях, що зберігаються в каталозі /etc/rc.d. Другий спосіб — запуск програм за допомогою демона inetd при надходженні запиту від клієнта-програми. Особливості виклику серверів описуються в конфігураційному файлі програми /etc/ inetd. conf. І, нарешті, мережні служби можуть безпосередньо запускатися за допомогою сценаріїв, керуючих конфігурацією системи. Як правило, подібні сервери не входять у стандартний комплект постачання Linux і інстилуються окремо.
6. Принципи роботи брандмауерів
Інформаційні системи корпорацій, урядових закладів і інших організацій постійно розвиваються в наступних напрямках.
• Система централізованої обробки даних, що працює на базі мейнфрейма, до якого безпосередньо підключене деяке число терміналів.
• Локальна мережа, що поєднує персональні комп’ютери і термінали один з одним і мейнфреймом.
• Об’єднана мережа, що складається з декількох локальних мереж, зв’язаних один з одним персональних комп’ютерів, серверів і, можливо, одного чи двох мейнфреймов.
• Мережа масштабу підприємства, що складає з декількох, що знаходяться на досить великій відстані друг від друга об’єднаних мереж, що зв’язуються між собою за допомогою відомчої глобальної мережі.
• Зв’язок через Internet, при якій різні об’єднані мережі виявляються підключеними до Internet і можуть бути також зв’язаними один з одним відомчою глобальною мережею.
Сьогодні зв’язок з Internet для більшості організацій уже є звичною справою. Для багатьох організацій інформація і послуги Internet життєво необхідні. Крім того, доступ до Internet потрібно багатьом індивідуальним користувачам, і якщо їхня локальна мережа не забезпечує такого доступу, вони самостійно використовують засоби вилученого доступу для підключення своїх персональних комп’ютерів до Internet через постачальника послуг Internet (провайдера). Але, хоча доступ до Internet і дає організації очевидні переваги, вона в той же час відкриває ресурси внутрішньої мережі організації зовнішньому світу. Ясно, що це несе в собі визначену погрозу для організації. Для захисту від цієї погрози можна обладнати кожну робочу станцію і кожен сервер внутрішньої мережі надійними засобами захисту типу системи захисту від вторгнень, але такий підхід, мабуть, непрактичний. Розглянемо, наприклад, мережу із сотнями чи навіть тисячами окремих систем, на яких працюють самі різні версії UNIX, так ще і Windows 95„ Windows 98 і Windows NT. Якщо буде виявлена яка-небудь вада в системі захисту, прийдеться внести зміни в засоби захисту всіх систем, що потенційно можуть показатися вразливими. Альтернативою, що стає усе більш популярною, є використання брандмауера. Цей пристрій розміщається між внутрішньою мережею організації і Internet, забезпечуючи контрольований зв’язок і споруджуючи зовнішню стіну, чи границю. Метою створення такої границі є захист внутрішньої мережі від несанкціонованого проникнення ззовні через Internet і організація єдиного центра, у якому повинні застосовуватися засоби захисту і контролю. Брандмауер може являти собою як окремий комп’ютер мережі, так і групу спеціально виділених комп’ютерів, що здійснюють функції брандмауера мережі, взаємодіючи між собою.
У цьому розділі ми спочатку обговоримо загальні характеристики брандмауерів, а потім розглянемо брандмауерів найпоширеніших типів. Наприкінці роздягнула приводяться деякі типові конфігурації брандмауерів.
6.1 Характеристики брандмауерів
У [BELL94] приводиться наступний список основних задач, що стоять перед розроблювачами брандмауерів.
1. Весь потік даних, що направляються з внутрішньої мережі в зовнішній світ, які йдуть у зворотному напрямку, повинний проходити через брандмауера. Для цього фізично блокується будь-який доступ до локальної мережі в обхід брандмауера. Як буде показано нижче, ця задача має кілька різних конструктивних рішень.
2. З усього потоку даних, що надходять до брандмауера, пройти його можуть тільки дані, які пройшли аутентифікацію відповідно до локальної політики захисту. Як буде показано нижче, у брандмауерах реалізуються різні типи політик захисту.
3. Брандмауер сам по собі повинен бути недоступний для вторгнення ззовні. Це припускає наявність високонадійної системи з захищеною операційною системою.
У [SMIT97] перераховані чотири основних засоби, за допомогою яких брандмауери здійснюють контроль доступу і забезпечують реалізацію політик захисту відповідної обчислювальної системи. Споконвічно брандмауери здійснювали в основному керування серверами, але сьогодні на них покладені й інші задачі.
• Керування серверами. Визначення типів служб Internet, до яких можна одержати доступ із внутрішньої мережі назовні і з зовнішнього оточення усередину. Брандмауер може фільтрувати потік даних на основі IP-адрес і номерів портів TCP. Він пропонує такий компонент, як прокси-сервер, через який може проходити кожен запит сервісу і який приймає рішення про те, пропустити даний запит чи ні. Брандмауер може містити і самі серверні компоненти, наприклад, Web-сервер чи поштову службу.
• Керування напрямком руху. Визначення напрямку, у якому можуть ініціюватися і проходити через браудмауер запити до тих чи інших служб.
• Керування користувачами. Представлення доступу до служб у залежності від прав доступу користувачів, що звертаються до цих служб. Ця функція звичайно застосовується до користувачів усередині мережі, що захищається за допомогою брандмауера (локальним користувачам). Однак вона може застосовуватися і до потоку даних, що надходить від зовнішніх користувачів, але це вимагає реалізації в якійсь формі технології аутентифікації, наприклад, забезпечуваної протоколом IPSec.
• Керування поведінкою. Контроль за використанням окремих служб. Так, брандмауер може фільтрувати електронну пошту, відсіваючи “спэм”, чи ж дозволяти доступ ззовні тільки до визначеної частини інформації, що знаходиться на локальному Web-сервері.
Перед розглядом особливостей конфігурації брандмауерів різних типів визначимо вимоги, висунуті до них. Брандмауер може пропонувати наступні можливості.
1. Брандмауер визначає єдину крапку входу, у якій припиняється несанкціонований доступ зовнішніх користувачів до мережі, що захищається, забороняється потенційно уразливим службам вхід у мережу чи ззовні вихід зсередини в зовнішній світ, а також забезпечується захист від різних атак вторгнення, що використовують зміну чи маршруту вказівка помилкових IP-адрес. Наявність єдиної крапки входу спрощує задачу контролю безпеки, тому що всі засоби захисту виявляються зосередженими в одному місці.
2. Брандмауер – це місце, де здійснюється моніторинг подій, що мають відношення до захисту мережі. Для цього в брандмауері можуть бути передбачені відповідні компоненти контролю і повідомлення.
3. Брандмауер є зручною платформою для ряду функцій Internet, що не мають безпосереднього відношення до безпеки. До таких функцій можна віднести трансляцію локальних мережних адрес в адреси Internet, a також засобу керування мережею, що контролюють використання Internet і ведення відповідного журналу.
4. Брандмауер може служити платформою для IPSec. Можливості тунельного режиму такого брандмауера можна використовувати при побудові віртуальних приватних мереж.
Брандмауери мають свої обмеження, описані нижче.
1. Брандмауер не захищає від атак, що йдуть в обхід. Внутрішні комп’ютерні системи можуть мати засобу вилученого доступу до зовнішнього постачальника послуг Internet. Внутрішня локальна мережа може мати модемну стійку, що забезпечує вилучений доступ до мережі співробітникам, що знаходяться в чи відрядженні працює вдома.
2. Брандмауер не може захистити від внутрішніх погроз безпеки, наприклад, з боку незадоволеного чи службовця співробітника, що вступив у змову з зовнішнім порушником.
3. Брандмауер не може захистити від погрози передачі інфікованих вірусами програм чи файлів. У зв’язку з тим що в рамках границь, що захищаються брандмауером, може використовуватися безліч різних операційних систем і додатків, для брандмауера виявляється практично неможливим перевіряти усі вхідні файли, електронну пошту й одержувані повідомлення на предмет наявності вірусів.
Висновки
Отже, крім конфігурації, при якій брандмауер представлений окремою системою типу фільтруючого маршрутизотора чи шлюзу (див. мал.), можливі більш складні конфігурації. І саме такі конфігурації використовуються найчастіше. На малюнку, в основу якого покладені відповідні ілюстрації з [SEME96], показані три самі розповсюджені конфігурації брандмауерів. Розглянемо ці конфігурації по черзі.
Конфігурація брандмауера з екрановано підмережею (мал.в) із усіх розглянутих тут варіантів забезпечує найбільш надійний захист. У цій конфігурації встановлено два фільтруючих маршрутизатори: один між бастіонним вузлом і Internet, а другий — між бастіонним вузлом і внутрішньою мережею. Дана конфігурація створює ізольовану підмережу, що може складатися тільки з бастіонного вузла, але може також мати й один чи кілька інформаційних серверів, а також модеми, за допомогою яких здійснюється вилучений доступ до мережі. Звичайно до вузлів, що входять до складу екранованої підмережі, можна одержати доступ як з Internet, так і з внутрішньої мережі, однак потік даних крізь підмережу блокується.