Керівництво по winroute
WinRoute надає наступні способи маніпуляції пакетами (в моделі OSI мережевих протоколів):
Призначення портів забезпечує доступ до свого улюбленого службам, захищеним за допомогою NAT.
Для досягнення високого рівня безпеки, WinRoute містить т.зв. модуль інспектування. Це спеціальний драйвер, який здійснює зв'язок між лінією і мережевим протоколом моделі OSI, і використовує спеціальну технологію, що забезпечує отримання WinRout'ом пакетів безпосередньо від драйвера мережевої карти, до того як пакет буде доступний для будь-якого компонента операційної системи.
Положення модуля інспекції WinRoute (перевіряючого вміст пакетів) в мережевій архітектурі Windows показано на малюнку нижче: The location of the WinRoute's inspection module (which checks the contents of packets) in the network architecture of Windows operating systems is shown in the figure bellow.
Термінологія
В кінці нижчого тексту використовуються деякі терміни, пов'язані з мережних технологій. Ми пропонуємо вам ознайомитися з цими термінами, особливо це буде корисно, якщо ви маєте намір налаштовувати фільтрацію пакетів, тому що це дозволить вам знати значення інформації, що міститься в заголовках пакетів.
Протоколи TCP / IP
WinRoute працює з мережами TCP / IP. Протоколи TCP / IP розроблені для роботи в рівнях. При згадці протоколу TCP / IP маються на увазі: IP, TCP, UDP, ICMP і ін.
Мережевий інтерфейс
Мережевим інтерфейсом називається пристрій, що служить для установки з'єднання між комп'ютерами і передачі даних між ними. Мережевимиінтерфейсами можуть бути мережева карта, модем, ISDN і т.п. Комп'ютер відсилає і приймає інформаційні пакети за допомогою мережевого інтерфейсу.
пакети
Пакет - це основна інформаційна одиниця, використовувана для передачі даних між комп'ютерами. Кожен пакет містить деяку кількість даних. Максимальна довжина пакета залежить від мережевого середовища. Наприклад, в мережі Ethernet максимальна довжина пакету 1500 байт. У кожному мережевому рівні, ми можемо розділити вміст пакета на дві частини - заголовок і дані. Тема містить контрольну інформацію відповідного мережевого рівня, дані відповідають більш високому мережному рівню. Більш детальну інформацію про структуру пакетів ви знайдете нижче в розділі, присвяченому фільтрації пакетів.
Як працює NAT
Ми можемо продемонструвати роботу NAT наступним прикладом:
Примітка:
Номери портів в пакетах, що пересилаються через WinRoute повинні змінюватися, оскільки якщо дві або більше станцій в захищеній ЛВС починають передавати дані, використовуючи однакові номери портів, з'являється необхідність ідентифікувати, з якої саме станції прийшов даний пакет. Модуль NAT призначає номера портів в діапазоні від 61000 до 61600. Для кожної транзакції призначається унікальний порт.
Критичні моменти роботи NAT
Додатки працюють з NAT без будь-яких проблем, якщо транзакція ініційована з захищеної ЛВС (в більшості випадків так воно і є). Однак, існують додатки, при розробці яких допущені помилки, і які не відповідають повністю моделі "клієнт-сервер". Такі додатки можуть не працювати з NAT або їхні функції можуть бути недоступні. Причиною може бути використання такими додатками більш одного з'єднання і додатковими сполуками, ініційованими сервером (розташованим десь в Інтернеті). NAT, цілком природно, блокує такі транзакції.
Налаштування NAT
Основна настройка
У WinRoute NAT просто включається / вимикається опцією в панелі налаштування мережевого інтерфейсу. Природно, мається на увазі інтерфейс, за допомогою якого здійснюється доступ ЛВС в Інтернет. (Ели-пали, або цей мануал писав кінчений кретин, або для оних же :)
NAT конфігурується таким меню:
Settings => Interface Table => NAT
Ця опція включає NAT. NAT буде обробляти всі пакети, що проходять через інтерфейс.
розширені налаштування
Щоб застосовувати розширені настройки NAT, необхідно, щоб він був включений для інтерфейсу. Тобто ми спочатку встановлюємо NAT для інтерфейсу, а потім, в розширених налаштуваннях, визначаємо, де NAT не застосовуватиметься.
Розширені настройки NAT виробляються в меню:
Settings => Advanced => NAT pad => Add / Edit button- "Опис пакета"
- "Packet Description"
Якщо до пакету застосовується правило, інформація про пакет записується. Лог особливо зручний в разі тестування конфігурації або виявлення проблем з нею.
Приклад розширених налаштувань NAT
Для настройки NAT в цій ситуації, спочатку ми включимо NAT для інтерфейсу, що забезпечує доступ в інтернет (line 0). Потім, в розширених налаштуваннях (Advanced Settings), ми відключаємо NAT для третього сегмента ЛВС. Розширені настройки показані на цьому малюнку:
призначення портів
WinRoute використовує NAT, який робить захищену ЛВС закритою для доступу зовні. Використовуючи призначення портів, можливо створювати комунікаційні канали, через які може бути організований доступ до служб всередині ЛВС. Таким чином можливо створювати публічні служби, такі як WWW-сервер або FTP-сервер і т.п.
Як працює призначення портів
Налаштування призначення порту
Призначення портів проводиться в меню:
Settings => Advanced => Port Mapping => Add / Edit button- "Protocol"
Протокол, який використовується для передачі через призначений порт.
Визначає номер порту або діапазон портів для яких дозволені транзакції.
Номер порту комп'ютера, на який перепризначувалися пакети. У більшості випадків еквівалентний Listen Port.
Деякі корисні конфігурації порт-маппінга показані в Додатку.
фільтрація пакетів
Як виглядає пакет
Щоб налаштовувати фільтрацію пакетів, важливо розуміти, як відбувається маніпуляція пакетами в мережевих рівнях TCP / IP.
У каждома рівні вміст пакета розділене на дві частини: заголовок і дані. Тема містить контрольні дані даного мережевого рівня. Дані відносяться до вищих мережевим рівнями. Кожен мережевий рівень додає свій власний заголовок, так що в результаті пакет виглядає наступним чином:
Наступна інформація використовується при налаштуванні правил фільтрації для заголовків відповідних протоколів (мережевих рівнів):
IP (Інтернет-протокол) (Рівень Internet)
IP - базовий протокол передачі даних вищого рівня.
Протокол ICMP (Рівень Internet)
Протокол контрольних повідомлень Інтернет (Internet Control Message Protocol) використовується для пересилки між комп'ютерами повідомлень про помилки і контрольних повідомлень.
Для фільтрації може використовуватися наступна інформація:- Тип повідомлення ICMP
Протокол TCP (транспортний рівень)
Протокол управління передачею (Transmission Control Protocol) використовується для надійної передачі даних між двома комп'ютерами. Комп'ютери обмінюються даними, використовуючи "з'єднання". Установка з'єднання, передача даних і закриття з'єднання управляється спеціальними влагами в TCP-заголовку пакета. Прапор, керуючий відкриттям з'єднання дуже важливий для фільтрації пакетів, так як дані можуть бути передані тільки після установки з'єднання (та що ви говорите!;).
Для фільтрації використовується наступна інформація:- порт джерела
- порт приймача
- прапори
Протокол UDP (транспортний рівень)
Для фільтрації може використовуватися наступна інформація:- порт джерела
- порт приймача
Які номери портів використовуються додатками
В Інтернет використовуються два основних типи додатків: серверні і клієнтські. WWW-браузер - приклад клієнтської програми, тоді як WWW-сервер - природно - серверний додаток (треба ж.). Для передачі даних клієнтські програми встановлюють зв'язок з серверними. Серверні додатки очікують установки з'єднання на заданих номерах портів. Зазвичай це номера менше 1024. З іншого боку, немає строгого визначення номерів портів для клієнтських додатків, поетом їм порт (и) призначається динамічно (додаток запитує у ОС номер вільного порту). Номери портів, які використовуються для динамічного призначення, зазвичай менші за 1024.
Приклад сполучення між браузером і WWW-сервером показаний на малюнку:
Політика безпеки
Вибір правил фільтрації безпосередньо залежить від того, які сервіси Інтернет ви хочете зробити доступними для користувачів вашої ЛВС. Також це залежить від того, які сервіси у вашій ЛВС ви хочете зробити доступними з Інтернет.
Застосування більш суворих правил можуть зробити недоступними для користувачів ваших ЛВС деяких сервісів Інтернет. Наприклад, це той випадок, коли запущено додаток, з яким необхідно встановити додаткове з'єднання з Інтернет, або додаток, засноване на UDP. З іншого боку, застосування більш вільних правил збільшує число додатків і зменшує захищеність ЛВС.
Основний принцип налаштування фільтрації - блокування доступу з Інтернет в ЛВС і повний доступ в зворотному напрямку (з ЛВС в Інтернет). Потім, в залежності від того, які служби ви хочете надати для доступу зовні, ви робите настройку правил.
Найбільш важливим питанням є захист життєво важливих служб вашої ЛВС Ці служби (файлові сервери, Інтранет-сервери, SQL-сервери) зазвичай відстежують з'єднання по портам з номерами меншими 1024. Служби, які використовують номери портів, менші 1024, можуть виконуватися не тільки на серверах, навіть призначені для користувача машини можуть їх виконувати, наприклад в разі поділу доступу до файлів (sharing). З іншого боку, клієнтські програми використовують номери портів, що перевищують 1024, так що це число є дуже значущим для настройки політик безпеки.
Осмисленої політикою є блокування доступу з Інтернет до портів, чий номер 1024, для протоколів TCP і UDP. Після чого, ви можете налаштовувати служби, які будуть доступні мз Інтернет. Наприклад, для WWW ви дозволяєте доступ на порт 80 (в загальному випадку).
Більш сувора політика також забороняє всі вхідні UDP-пакети, а також TCP-пакети, які намагаються встановити з'єднання з Інтернет з портами, чий номер перевершує 1024. Так, подібна політика повністю забороняє установку з'єднання з Інтернет з захищеної ЛОМ, але дозволяє все соедіненінія, ініційовані з ЛВС. При застосуванні такої політики, деякі додатки можуть припинити функціонувати (частково або повністю - залежить від програми). Проблеми можуть виникнути з додатками, які очікують відповіді від іншої сторони на порт, чий номер перевищує 1024. Також не працюватимуть додатки, що використовують UDP.
Під час налаштування правил фільтрації важливо пам'ятати, що правила будуть шукатися в таблиці в тому порядку, в якому вони були туди занесені, і пошук відповідного правила припиняється після його знаходження (разюче.).
Наступні приклади показують більш і менш сувору політики, які ви можете використовувати при налаштуванні правил:
Менш строга політика:
Для вхідних з Інтернет пакетів ми робимо наступне:- індивідуально дозволяємо передачу пакетів з / на порти з номерами менше 1024 для служб, які надаються для зовнішнього доступу
- дозволяємо проходження UDP-пакетів з DNS-серверів, номер порту для яких (вх. / вих.) дорівнює 53
- забороняємо проходження TCP-пакетів з портом призначення менше 1024
- забороняємо проходження UDP-пакетів з портом призначення менше 1024
Більш сувора політика:
Малюнок нижче показує конфігурацію політики в фільтрі пакетів:
Заборона доступу користувача до деяких служб в Інтернеті
Наприклад, щоб заборонити доступ до FTP (File Transfer Protocol), треба зробити наступне:
Якщо у вас працює проксі-сервер, який здійснює фільтрацію по URL і ви хочете, щоб користувачі вашої ЛВС використовували проксі замість прямого доступу в Інтернет, використовуйте наступне:
Конфігурація фільтра пакетів
Правила безпеки виконуються з використанням таких методів:
Пошук правил проводиться в тому порядку, в якому вони показуються в діалоговому вікні настройки. При прийомі або відправці пакета, в першу чергу проводиться пошук правил для інтерфейсу, з якого отримано пакет. Потім шукаються правила, загальні для всіх інтерфейсів. Після виявлення відповідного правила, пошук припиняється і робиться відповідна дія: або пакет пропускається, або блокується. Опціонально, інформація про пакет пишеться в файл або вікно WinRoute.
Фільтрація пакетів може бути налаштована в наступному меню:
Settings => Advanced => Packet Filter => Add / Edit- "Protocol"
Мережевий протокол. Можливі значення: IP, TCP, UDP, ICMP, PPTP.
Також можна вказати вх. / Вих. порти для протоколів TCP і UDP.
Використовується для визначення особливого типу повідомлення ICMP.
Можливо вказати наступне:
"Only established TCP connections" ( "Тільки встановлене з'єднання TCP"): правило застосовується, якщо пакет не створює нового з'єднання TCP, тобто в ньому не встановлено прапор SYN.
"Only establishing TCP connections" ( "Тільки під час активного з'єднання TCP"): правило застосовується при спробі створення пакетом з'єднання TCP, тобто в ньому встановлений прапор SYN.
Якщо це правило застосовно до пакету, проводяться наступні дії:
Permit (дозволити) - пакет пропускається в захищену ЛВС
Drop (скинути) - скасування пакета
Deny (заборонити) - проходження пакета блокується
Якщо пакет заборонений, його джерела надсилається повідомлення (повідомлення "TCP reset" або "ICMP port unreachable")
При вживанні цього правила записується інформація про пакет. Запис проводиться або у вікно WinRoute, або в файл.
Визначає період часу, протягом якого працює правило. Ви можете включити виконання правила постійно.
верифікація
Налаштування верифікації
Верифікація може бути налаштована в наступному меню:
Settings => Advanced => Anti-Spoofing => Edit button- "Any" ( "Все")
Дозволяється проходження пакетів тільки з безпосередньо підключеною підмережі. Ця опція зазвичай використовується для інтерфейсів ЛВС.
Про кожну спробу порушення правил проводиться запис у вікно WinRoute або в файл.
Приклад конфігурації верифікації
У прикладі нижче показані три мережі:- 192.168.1.0, маска 255.255.255.0
- 192.168.2.0, маска 255.255.255.0
- 194.196.16.0, маска 255.255.255.0
Верифікація налаштована, як показано на малюнку:
Діалогові вікна налаштування:
тимчасові інтервали
Тимчасові інтервали можуть бути використані, наприклад, для застосування правила мережевої фільтрації в певний період часу. Назва інтервалу використовується для посилань на нього.
Тимчасові інтервали налаштовуються в наступному меню:
Settings => Advanced => Time Intervals-
Будь-яка кількість записів може бути створено під одним ім'ям, що дозволяє здійснювати дуже гнучке налаштування часу.