"Мережева безпека буває хай і нехай".
Фраза, знайдена в мережі Інтернет
З моменту своєї появи мережу Інтернет багаторазово зросла. Також багаторазово збільшилися такі показники мережі, як надаються ресурси, швидкості обміну інформацією, швидкості підключення. Однак разом з ростом корисних ресурсів, багаторазово зросли ризики крадіжки інформації, використання ресурсів не за призначенням та інші опасності.Такім чином, кожен системний адміністратор щодня стикається з питаннями захисту обслуговуваних ресурсів.
Особливості роботи файрвола
Для базового розуміння роботи файрвола, необхідно ознайомитися з поняттями ланцюжка (chain), стану з'єднання (connection state), умови та дії (action).
При фільтрації трафік, в залежності від свого призначення потрапляє в одну з ланцюжків (chain) обробки трафіку. У фільтрі зумовлені три основні ланцюжка:
- input вхідний трафік призначений для маршрутизатора. Наприклад, коли ви підключаєтеся до маршрутизатора за допомогою додатка winbox, трафік як раз потрапляє в цей ланцюжок.
- output Вихідний трафік. Трафік, що створюється самим маршрутизатором. Наприклад, якщо ви виконаєте команду ping безпосередньо з самого маршрутизатора, трафік потрапить в цей ланцюжок.
- forward Трафік, що йде через маршрутизатор. Наприклад, якщо комп'ютер з локальної мережі, встановив з'єднання з зовнішнім сайтом, даний трафік потрапляє в ланцюжок forward.
Таким чином ми бачимо, що для захисту самого маршрутизатора необхідно використовувати ланцюжок input. а для захисту і фільтрації трафіку між мережами необхідно використовувати ланцюжок forward.
Крім того, адміністратор має можливість створювати свої власні ланцюжки обробки трафіку, до яких можна звертатися з основних ланцюжків. Дана можливість буде розглянута в подальшому.
Стан з'єднання (connection state)
Кожне з мережевих з'єднань MikroTik відносить до одного з 4 станів:
- New - Нове з'єднання. Пакет, що відкриває нове з'єднання, ніяк не пов'язане з уже наявними мережевими з'єднаннями, що обробляються в даний момент маршрутизатором.
- Established - Існуюче з'єднання. Пакет відноситься у вже встановленому з'єднанню, що обробляється в даний момент маршрутизатором.
- Related - Пов'язане з'єднання. Пакет, який пов'язаний з існуючим з'єднанням, але не є його частиною. Наприклад, пакет, який починає з'єднання передачі даних в FTP-сесії (він буде пов'язаний з керуючим з'єднанням FTP), або пакет ICMP, що містить помилку, що відправляється у відповідь на іншу сполуку.
- Invalid - Маршрутизатор не може співвіднести пакет ні з одним з перерахованих вище станів сполуки.
Виходячи з вищевикладеного, ми бачимо, що хорошим варіантом налаштування фільтрації пакетів буде наступний набір умов:
- Обробляти нові сполуки (connection state = new), приймаючи рішення про пропуск або блокування трафіку.
- Завжди пропускати з'єднання в стані established і related, так як рішення про пропуск цього трафіку було прийнято на етапі обробки нового з'єднання.
- Завжди блокувати трафік, для якого стан з'єднання одно invalid, тому що цей трафік не відноситься ні до одного із з'єднань і фактично є паразитних.
При проходженні пакета через фільтр, маршрутизатор послідовно перевіряє відповідність пакету заданим умовам, починаючи від правила, розташованого першим. і послідовно перевіряючи пакет на відповідність правилам номер два, три і так далі, поки не відбудеться одна з двох подій:
- Пакет буде відповідати заданій умові. При цьому спрацює відповідне правило, в якому ця умова була задано, після чого обробка пакета буде завершена.
- Закінчаться всі умови і пакет не буде визнаний відповідним жодному з них. При цьому, за замовчуванням він буде пропущений далі.
Виходячи з п.2, не можна не відзначити, що є дві стратегії побудови фільтра пакетів:
- Нормально відкритий файрвол. Даний тип настройки можна визначити як «Все дозволено, що не заборонено». При цьому ми забороняємо проходження тільки деяких типів трафіку. Якщо пакет не відповідає цим типам - він буде пропущений. Зазвичай даний тип файрволу характерний для місць, де не пред'являється високих вимог до безпеки користувачів, а трафік може бути найрізноманітнішим і не піддається жорсткій кваліфікації. Така настройка характерна для операторів зв'язку (Інтернет-провайдерів), відкритих точок доступу, домашніх маршрутизаторів.
- Нормально закритий файрвол. Даний тип настройки можна визначити як «Все заборонено, що не дозволено». При цьому дозволяється проходження тільки певних типів трафіку, а останнім правилом в файрвола коштує правило, яке забороняє проходження будь-якого типу трафіку. Такий тип настройки файрвола характерний для корпоративного використання, де існують жорсткі вимоги до безпеки.
Не можу сказати, що якась із стратегій є правильною, а якась неправильною. Обидві стратегії мають право на життя, але кожна - в певних умовах.
Тепер докладніше розпишемо всі варіанти умов, на підставі яких ми можемо приймати рішення про дії.