Лабораторна робота 9 на тему Безпека в Інтернет
« НазадЛАБОРАТОРНА РОБОТА № 9. БЕЗПЕКА В ІНТЕРНЕТМета: Набуття практичних навичок забезпечення безпеки в мережі Internet ЗАГАЛЬНІ ПОЛОЖЕННЯУ цій лабораторній роботі розглядаються найпростіші, але досить ефективні засоби забезпечення безпеки мережі підприємства при підключенні її до Інтернет, розраховані на підприємства, що не мають особливо секретних даних, що й не ставлять завдання контролю й обмеження діяльності співробітників при роботі з мережею. Існує також велика кількість складних, багатофункціональних і, як правило, комерційних брандмауерів – програмно-апаратних комплексів контролю й розмежування трафіку між внутрішньою мережею підприємства й Інтернет. Демон оболонок сервісів (TCP wrapper)Простим засобом захисту Unix-Хоста від несанкціонованого доступу є установка оболонок сервісів (TCP wrappers). Принцип дії оболонок наступний: при вступі запиту на з'єднання з яким-небудь мережним сервісом на хості запускається не демон, що обслуговує цей сервіс, а програма-оболонка, яка перевіряє, чи дозволений сеанс із вилученим хостом, що запросили з'єднання, і у випадку позитивного результату запускає властиво необхідний демон. Для запуску оболонок для тих або інших сервісів слід модифікувати файл inetd.conf так, щоб при звертанні на порти зазначених сервісів замість стандартного демона запускався демон оболонки, а в якості параметра йому передавався шлях до стандартного демона. Наприклад, нехай демон оболонки /usr/sbin/tcpd контролює доступ до сервісу finger. Відповідний рядок в /etc/inetd.conf виглядає: finger stream tcp nowait nobody /usr/sbin/tcpd in.fingerd Списки доступу, якими користується демон оболонки, утримуються у файлах /etc/hosts.allow, /etc/hosts.deny. При виникненні спроби з'єднання адреса хоста шукається спочатку у файлі hosts.allow, якщо він знайдений, то з'єднання дозволяється, інакше проводиться пошук в hosts.deny. У випадку успішного пошуку з'єднання забороняється, інакше дозволяється. Формат файлів hosts.allow і hosts.deny однаковий, рядок у файлі має вигляд: services:hosts[:action] action – дія, виконувана, у випадку збігу адреси хосту й необхідного сервісу з даним рядком (наприклад, послати повідомлення адміністраторові); поле action може бути відсутнім. Допускаються регулярний вираз *, оператори ALL і EXCEPT. Приклад: hosts.allow telnetd:194.84.124.0/255.255.255.0, 193.124.169.58 ftpd:ALL EXCEPT 1.0.0.0/255.0.0.0 hosts.deny ALL:ALL Списки доступу на маршрутизаторі
Для захисту цілої мережі від несанкціонованих з'єднань можна підключити списки доступу на вхідному маршрутизаторі (шлюзі). Параметри будь-який вхідної або вихідної дейтаграми (адреса джерела, місця призначення, номера портів і т.п.) перевіряються за списком, і залежно від результату дейтаграми або пропускається маршрутизатором, або знищується. Складання списків доступу розглянемо на прикладі маршрутизаторів Cisco. Списки доступу будуються командою access-list у режимі глобальної конфігурації (режим доступний через команди enable, потім configure terminal), кожний список визначається номером – числом у діапазоні 0-99. Синтаксис команди для введення рядка в список: access-list номер_списку {deny | permit} адреса_джерела [маска] Ip-Адреса і маска джерела дейтаграми записуються в десятковій системі, при цьому в масці встановлюються біти, значення яких в адресі слід ігнорувати, інші біти скидаються. Наприклад, щоб рядок списку спрацював для всіх хостів з адресами 194.84.124.ххх, адреса джерела повинна бути 194.84.124.0, а маска – 0.0.0.255. Комбінація адреса-маска виду 0.0.0.0 255.255.255.255 ( тобто відповідна всім можливим адресам) може бути записано у вигляді одного ключового слова any. Оператори deny і permit визначають відповідно, відкинути або пропустити дейтаграму, адреса джерела якої задовольняє комбінації адреса джерела – маска у відповідному рядку списку. Дейтаграма, адреса джерела якої не задовольнив умові жодної рядка списку, відкидається. Перевірка відбувається в порядку введених рядків, спрацьовує перша виявлена відповідність. Для анулювання списку доступу слід увести команду no access-list номер_списку Для застосування списку доступу до дейтаграм, що проходять через певний інтерфейс, потрібно в режимі конфігурації цього інтерфейсу ввести команду ip access_group номер_списку {in | out} Ключове слово in або out визначає, чи буде список застосовуватися до вхідних або вихідним дейтаграм відповідно. Вхідними вважаються дейтаграми, що надходять до інтерфейсу з мережі, точніше, з рівня доступу до середовища передачі. Вихідні дейтаграми рухаються у зворотному напрямку. Скасування команди досягається повторним уведенням усієї команди із префіксом no. Режим конфігурації інтерфейсу доступний по команді
interface ім'я_інтерфейсу з режиму глобальної конфігурації. Розширені списки доступуВище були розглянуті стандартні (standard) списки доступу. Існують також розширені (extended) списки доступу, що мають більшу кількість параметрів більш багаті можливості, які і пропонують, для контролю трафіку. Розширені списки доступу створюються також за допомогою команди access-list у режимі глобальної конфігурації, але номера цих списків лежать у діапазоні 100-199. Приклад синтаксису команди створення рядка розширеного списку для контролю Tcp-З'єднань: access-list номер_списку {deny | permit} tcp адреса_джерела маска [оператор порт [порт]] адреса_призначення маска [оператор порт [порт]] [established] Маски для адреси джерела й хосту призначення визначаються так само, як і в стандартних списках. Оператор повинен мати одне з наступних значень: lt (строго менше), gt (строго більше), eq (рівно), neq (не рівно), range (діапазон включно). Після оператора випливає номер порту (або два номери порту у випадку оператора range), до якого цей оператор застосовується. Комбінація оператор-порт, що випливає відразу ж за адресою джерела, ставиться до портів джерела. Відповідно комбінація оператор-порт, що випливає відразу ж за адресою хосту призначення, ставиться до портів хосту призначення. Застосування цих комбінацій дозволяє фільтрувати пакети даних не тільки по адресах місць відправлення й призначення, але й по номерах портів, тобто сервісів Інтернет – наприклад, не допускати роботу зі службою telnet (порт 23). Ключове слово established визначає сегменти TCP, передані в стані встановленого з'єднання. Це значить, що рядку, у який включений параметр established, не будуть відповідати сегменти із запитом на встановлення з'єднання (сегменти із установленим прапором SYN). Як і в стандартних списках, оператори deny і permit визначають відповідно, відкинути або пропустити дейтаграму з Tcp-Сегментом, параметри якої задовольняють зазначеним у рядку списку доступу. Дейтаграма, параметри якої не задовольнили умовам жодного рядка списку, відкидається. Перевірка відбувається в порядку введених рядків, спрацьовує перша виявлена відповідність. Приклад: “заборонити встановлення з'єднань за допомогою протоколу telnet з усіма хостами мережі 172.16.252.0 netmask 255.255.252.0 з боку всіх хостів Інтернет, причому у зворотному напрямку всі з'єднання повинні встановлюватися”: access-list 100 permit tcp any 172.16.252.0 0.0.3.255 eq 23 established access-list 100 deny tcp any 172.16.252.0 0.0.3.255 eq 23 access-list 100 permit tcp any any. Контроль за ICMP повідомленнями може здійснюватися за допомогою команд типу: access-list номер_списку {deny | permit} icmp адреса_джерела маска адреса_призначення маска [ icmp-тип [icmp-код]], де icmp-тип і, якщо потрібне уточнення, icmp-код визначають Icmp-повідомлення. Звичайно з метою безпеки не пропускаються Icmp-Повідомлення типу Redirect (Змінити маршрут), тобто повідомлення типу 5. Взагалі, у розширених списках можна контролювати пакети будь-якого Ip-Протоколу. Для цього після оператора deny/permit треба вказати назву протоколу (eigrp, gre, icmp, igmp, igrp, ipinip, ospf, tcp, udp) або його номер, яким він кодується в заголовку дейтаграми . Далі вказуються адреси джерела й хосту призначення з масками і, можливо, додаткові параметри, специфічні для даного протоколу. Вказівка ip у якості протоколу означає “всі протоколи”. Застосування розширених списків доступу до даних, що проходять через той або інший інтерфейс, відбувається в такий же спосіб, як і застосування стандартних списків. Загальні правила складання списків доступу на маршрутизаторіПри складанні списку доступу на маршрутизаторі-шлюзі, що відокремлює внутрішню (, що захищається) мережу від Інтернет, можна рекомендувати користуватися наступними міркуваннями: 1) заборонити source-routing – використання опції протоколу IP, що дозволяє фіксувати маршрут дейтаграми (небезпека підстановки неправильних адрес відправника); 2) створити вікна для пропуску необхідного Tcp-Трафіка, наприклад, дозволити доступ з Інтернет до WWW, email, FTP серверам підприємства, дозволити будь-який доступ в Інтернет з мережі підприємства; 3) доступ ззовні по портові 53/TCP (передача зони вторинному серверу DNS) дозволити тільки вторинним серверам DNS; 4) увесь інший Tcp-Трафік заборонити; 5) заборонити пропуск будь-яких пакетів, що приходять ззовні з адресою відправника, що належать внутрішньої мережі (такі пакети або помилкові, або відправлені зловмисником); 6) заборонити всі з'єднання по UDP, крім порту 53 (DNS) (UDP – протокол без установлення з'єднання, тому його складніше контролювати); 7) заборонити передачу Icmp-Повідомлень типу Redirect. Зрозуміло, політика використання списків доступу може відрізнятися від вищенаведеної. Список деяких номерів портів добре відомих сервісів (з файлу /etc/services) Сервіс Порт/ транспорт Коментар ftp-data 20/tcp канал передачі даних по FTP ftp 21/tcp канал передачі команд FTP telnet 23/tcp емулятор вилученого термінала smtp 25/tcp сервер електронної пошти whois 43/tcp пошук по базах даних whois domain 53/udp сервер DNS, обслуговування запитів domain 53/tcp сервер DNS, передача зони на вторинний сервер http 80/tcp сервер WWW sunrpc 111/udp вилучений виклик процедур sunrpc 111/tcp dhcp 67/udp сервер DHCP dhcp 68/udp клієнт DHCP ( для зв'язку сервера із клієнтом) tftp 69/udp сервер Trivial FTP finger 79/tcp Finger pop3 110/tcp Post Office Protocol – POP сервер nntp 119/tcp Cервер телеконференцій imap 143/tcp Сервер IMAP – розвиток PopвСервера snmp-trap 162/udp SNMP – Простий протокол керування мережею snmp 161/udp застосовується для вилученого конфігурування й керування маршрутизаторами й прочим мережним устаткуванням bgp 179/tcp Демон маршрутизації по протоколу bgp uucp 540/tcp Демон uucp – служби копіювання файлів ( у тому числі доставки пошти) по лініях, що комутируються syslog 514/udp Демон реєстрації системних подій talk 517/udp Сервіс спілкування між двома користувачами в реальному часі nfsd 2049/udp Сервер NFS – мережної файлової системи nfsd 2049/tcp Коди IpлПротоколів
У таблиці представлені коди деяких протоколів, пакети яких инкапсулируются в Ip-Дейтаграмму. Код протоколу заноситься в поле “Протокол” заголовка IpмДейтаграммы. Відповідно до цього коду IpуМодуль передає дані з дейтаграммы для обробки з модуля відповідного протоколу. Код Протокол Опис 1 ICMP Протокол контрольних повідомлень 2 IGMP Протокол керування групою хостів 4 IP IP поверх IP (інкапсуляція) 6 TCP TCP 8 EGP Протокол зовнішньої маршрутизації (застарів) 9 IGP Протокол внутрішньої маршрутизації (застарів) 17 UDP UDP 46 RSVP Протокол резервування ресурсів при мультикастингі 88 IGRP Протокол внутрішньої маршрутизації від фірми cisco 89 OSPF Протокол внутрішньої маршрутизації
Документація по протоколах ІнтернетУ таблиці представлені номери документів RFC (Request For Comments), що містять стандартизовані описи деяких протоколів Інтернет, а допоміжну інформацію, що також доповнює її. Спочатку вказуються номери документів, що містять стандартне (основне) опис протоколу, у дужках наведені номери документів, що містять додаткову інформацію. Повний список і тексти RFC доступні за адресою: http://www.rfc-editor.org/
Протокол Опис Номера RFC ARP Перетворення адрес IP->Ethernet 826 (1390, 1433, 1577, 1735, 1868) BGP-4 Зовнішня маршрутизація 1771 (2042, 1998, 1997, 1966, 1965, 1774, 1863, 1745, 1265 – 1269) CIDR Безкласова модель Ip-Пекло-Ресации 1519 (1520, 1817) DHCP Динамічна конфігурація стека TCP/IP 2131 (2132, 1534, 1541) DNS Доменна служба імен 1034, 2136, 2137, 974 (1035, 1996, 1995, 1886, 1982, 1032, 1101, 1183, 1876, 1912, 1611, 1612, 1706, 1712, 1713, 1794, 2052, 1536, 1537) FINGER Служба finger 1288 FTP Передача файлів 959 (1635, 1639, 1579, 949, 775) HTML-2.0 Мова розмітки гіпертексту 1866 (2070, 1980, 1942, 1867) HTTP-1.1 Передача гіпертексту 2068 (2069, 2109, 2145, 1945) ICMP Протокол контрольних повідомлень Інтернет 792 (1885, 1788, 1256) IGMP Мультикастинг 1112 TCP Контроль передачі даних проотоколом IP 793 (2147, 2140, 2126, 2018, 2001, 1791, 1693, 1644, 1337, 1323, 1263, 1146, 1144, 110, 1106, 1072) TELNET Емулятор вилученого термінала 854 (855-861, 885, 927, 933, 946, 1041, 1043, 1053, 1073, 1079, 1096, 1097, 1143,1184,1205,1372,1411,1412,1416,1571,1572, 2066) URL Уніфікований покажчик на ресурс 1738 (2017, 1959, 2122) X-Windows Системний протокол X-Windows 1013, 1198
Таблиця деяких двійкових чисел
00000001 -1 10000000 -128 00000011 -3 11000000 -192 00000111 -7 11100000 -224 00001111 -15 11110000 -240 00011111 -31 11111000 -248 00111111 -63 11111100 -252 01111111 -127 11111110 -254 00000000 -0 11111111 -255
Конфігурування сервера дистанційного доступу під Windows NT
Сервер дистанційного доступу під Windows NT дозволяє зареєстрованому користувачеві з будь-якого вилученого Windows-Хоста одержати доступ по лінії, що комутирується, у локальну мережу Windows NT, а через неї – в Інтернет. Конфігурування й запуск сервера складаються з наступних кроків: 1) через Network/Properties додати Service – Remote Access Service, вибрати або встановити обладнання для дозвона (порт, тип модему). У вікні програми установки сервісу нажати кнопку Configure і вибрати спосіб використання порту (Receive calls). Повернутися у вікно програми установки і нажати кнопку Network. У вікні, що з'явилося, дозволити будь-яку аутентификацию вилученого користувача (Allow any authentication) і сконфігурувати протокол TCP/IP. При конфігуруванні TCP/IP дозволити доступ клієнтові до всієї мережі (Allow remote client to access – Entire network) і вибрати спосіб присвоєння Ip-Адреси клієнтові: через DHCP або використовуючи спеціальний пул (простір адрес). В останньому випадку встановити розмір пулу (поля Begin і End), якщо потрібно – виключити із цього діапазону певні інтервали (Excluded Ranges: From – To; Add). Також можна дозволити клієнтові запитувати для себе який-небудь певну Ip-Адресу (Allow remote client to request a predetermined Ip-address); 2) установка дозволів на дистанційний доступ для користувачів і контроль над активними з'єднаннями здійснюється за допомогою меню Users-Permissions і Users-Active програми Remote Access Admin (розділ Admin Tools); 3) запустити сервер через Control Panel – Services – RAS – Start.
ЗАВДАННЯ ДО ВИКОНАННЯ РОБОТИ1. Ознайомитись із теоретичною довідкою. 2. Скласти списки доступу для маршрутизатора-шлюзу, що реалізують задану політику, і вказати порядок їх застосування до інтерфейсів мережі навчального закладу. Які методи захисту мережі застосовані. 3. Побудувати мережу для підприємства і застосувати методи захисту для неї. З повагою ІЦ "KURSOVIKS"! |