Налаштування клієнта для з'єднання за протоколом IPSec між ОС Linux на основі сервера доступу racoon і ОС Windows XP/Windows – 2000
З використанням сертифікатів X.509 і протоколу обміну ключами ISAKMP на стороні ОС Windows XP/Windows – 2000
IPSec
IP безпека (IP seсurity – IPSec), в загальному випадку, служить для підтримки безпечних з'єднань між вузлами і мережами в глобальній мережі Інтернет. Він може працювати в конфігурації «вузол-вузол» (один комп'ютер з'єднується з іншим) або «мережа-мережа» (одна локальна/глобальна мережа з'єднується з іншою). Реалізація IPSec використовує протокол обміну ключами в Інтернеті (Internet Key Exchange, IKE), розроблений комітетом з технічного розвитку Інтернету (Internet Engineering Task Force, IETF) [1] для взаємної перевірки достовірності і відповідності параметрів безпеці між системами, що підключаються, або мережами.
Процес з'єднання IPSec розділяється на два логічні етапи. На першому етапі вузол IPSec встановлює підключення до видаленого вузла або мережі. Видалений вузол/мережа перевіряє облікові дані віддаленого вузла і обидві сторони погоджують спосіб перевірки достовірності, застосовуваний в з'єднанні. Зазвичай для перевірки достовірності вузла IPSec використовується алгоритм з попереднім загальним ключем. У випадку з IPSec – з'єднання із застосуванням попереднього загального ключа, обидва вузли повинні використовувати один ключ, і тоді вони зможуть перейти до другого етапу установки з'єднання.
На другому етапі з'єднання між вузлами створюється IPSec з'єднання з умовним порівнянням безпеки (security association, SA). При цьому у базу даних SA вноситься інформація про конфігурацію – метод шифрування, способи обміну секретними ключами сеансу і деякі інші параметри. Цей етап і управляє з'єднанням IPSec між вузлами і мережами, рознесеними в просторі глобальної мережі.
Архітектура IPSec
1.1. Заголовки IPSec
У операційних системах Windows протокол IPSec захищає дані, які передаються по мережі, інкапсулюючи оригінальні корисні дані із заголовком IPSec режиму транспорту (Authentication Header, AH або Encapsulating Security Payload, ESP) або заголовка IPSec і додаткового заголовка IP у режимі тунелювання. Як ви вже знаєте, протокол IPSec зазвичай використовується для перетворення UDP і TCP портів, які використовуються додатками і службами операційної системи в один потік безпечного трафіку в обхід незахищеної мережі. Кожна політика безпеки IPSec складається з одного або декількох правил IPSec, що визначають захист трафіку IP. У свою чергу, кожне правило IPSec пов'язане з одним списком фільтрів IP і однією дією фільтру. Список фільтрів IP містить набір з одного або декількох фільтрів IP, які відфільтровують трафік загально політики IPSec. Фільтри IP визначають початкові і кінцеві адреси, діапазон адрес, ім'я комп'ютера, TCP або UDP порт, або тип сервера. Якщо трафік, що додається на комп'ютер з призначеною політикою, відповідає фільтру в одному із заданих правил політики, то виконується дія фільтру, яка призначена для поточного правила. Залежно від того, який протокол використовується, ви можете шифрувати увесь початковий пакет або тільки інкапсульовані корисні дані, або пакет та дані.
1.2. AH протокол
Заголовок AH забезпечує перевірку достовірності, цілісність даних і захист від повторів для усього пакету, за винятком полів в заголовку IP, для яких дозволена зміна за допомогою обчислення хеша з ключем для кожного пакету. При використанні AH в хеш включається увесь пакет і заголовок. Деякі поля, для яких дозволена зміна на шляху дотримання, виключаються. Робота служби захисту повторення пакетів забезпечується включенням порядкового номера кожного пакету.
1.3. ESP протокол
Заголовок Encapsulating Security Payload (ESP) є комбінацією заголовка і індексу завершення, який забезпечує перевірку достовірності, цілісності, захист від повторів і параметри конфіденційності тільки корисних даних IP за допомогою обчислення і включення хеша з ключем для кожного пакету. При використанні ESP в хеш включаються тільки заголовок, трейлер і корисні дані ESP, причому хешування не застосовується для захисту заголовка IP.
1.4. Обмін ключами в Інтернеті
Перед початком безпечного обміну даними, між двома комп'ютерами має бути усиновлене безпечне підключення. Для створення угоди між двома комп'ютерами існує метод зіставлення безпеки і дозволу обміну ключами, який називається обміном ключами в Інтернеті (Internet Key Exchange, IKE). Цей метод централізує управління зіставленням безпеки, тим самим скорочуючи час підключення, а також створює загальні секретні ключі, які використовуються для захисту і управління даними. Зіставлення безпеки є поєднанням погодженого ключа, протоколу безпеки, а також індексу параметрів безпеки, що в сукупності визначають механізми безпеки, які використовуються для захисту даних, що передаються між сторонами з'єднання. Цей процес не лише захищає обмін даними між двома комп'ютерами, але також захищає і видалені комп'ютери, які потребують безпечний доступ до внутрішньої мережі організації. Індекс параметра безпеки (Security Parameters Index, SPI) є унікальним визначальним значенням в зіставленні безпеки, яке використовується для декількох зіставлень безпеки на приймаючому комп'ютері.
Для забезпечення успішного і безпечного зв'язку IKE виконує операцію в два етапи. На першому етапі два комп'ютери створюють безпечний канал з перевіркою достовірності, який називається зіставленням безпечного режиму. Під час цього етапу спочатку виконується узгодження політики безпеки основного режиму за допомогою алгоритму шифрування (DES або 3DES), алгоритму перевірки цілісності (MD5 або SHA1), групи Діффі-Хеллмана або методу перевірки достовірності (Kerberos, сертифікат або попередній ключ). Після цього на першому етапі здійснюється обмін відомостями, які потрібні алгоритму визначення ключа Діффі-Хеллмана для створення загального секретного ключа. Після обміну на кожному комп'ютері створюється основний ключ, використовуваний для захисту перевірки достовірності. Останнім кроком на цьому етапі є перевірка достовірності. У цей момент комп'ютери виконують перевірку достовірності при обміні ключами Діффі-Хеллмана. Усі відомості облікового запису хешируются і шифруються за допомогою ключів, створених за результатами обміну відомостями про групу Діффі-Хеллмана на попередньому кроці.
На другому етапі обміну ключами в Інтернеті зіставлення безпеки узгоджуються від імені драйвера IPSec. Під час цього етапу виконуються наступні кроки: йде узгодження політики, під час якого комп'ютери IPSec обмінюються такими вимогами до захисту передачі даних, як протокол IPSec, а саме AH або ESP, алгоритм хешування для перевірки достовірності (MD5 або SHA1), а також, якщо запрошується, алгоритм шифрування (DES або 3DES). Далі відбувається оновлення або обмін матеріалом для створення ключа сеансу. В цей час IKE оновлює відомості про ключ, після чого відбувається створення нових загальних ключів для перевірки достовірності і шифрування пакетів. І, наостанок, йде процес зіставлення безпеки, після чого ключі передаються в драйвер IPSec разом з SPI.
Хід роботи
Налаштування для робочої станції Windows XP/Windows 2000.
Спершу, збережете файли сертифікату і ключа (ipsec-client.p12 і ca.crt) де-небудь на диску. Потім, запустите консоль управління MMC (“Пуск” -> “Виконати ” -> mmc -> натисніть "OK"), і додайте оснащення управління сертифікатами (Консоль -> “Додати або видалити оснащення ” -> виберіть Додати "Добавить" -> виберіть “Сертифікати” -> виберіть “Додати” -> виберіть “Облікового запису комп'ютера” -> виберіть “Локальний комп'ютер” -> виберіть "Готово" -> виберіть “Закрити” -> виберіть "ОК").
Розкрийте дерево сертифікатів, що відображається в оснащенні, клацніть правою кнопкою на контейнер – “Довірені кореневі центри сертифікації”, і виберіть – “Усі завдання” -> “Додати”. Запуститься майстер додавання сертифікатів. Натисніть “Далі”, в наступному вікні натисніть кнопку “Огляд”, вкажіть на файл кореневого сертифікату ЦС ca.crt, який ви зберегли на диску, і натисніть кнопку “Далі”. У наступному вікні виберіть “Помістити всі сертифікати в наступне сховище”, виберіть “Довірені кореневі центри сертифікації” і натисніть Далі “Далее”. Виберіть "Готово".
Це дозволило Windows з довірою відноситися до сертифікату сервера і до персонального сертифікату клієнта, який ми зараз будемо встановлювати.
У цій же консолі MMC клацніть правою кнопкою на контейнер Приватні "Личные", і виберіть Усі завдання "Все задачи" -> "Додати …". Запуститься майстер додавання сертифікатів. Натисніть "Далі", в наступному вікні натисніть кнопку "Огляд", вкажіть на файл персонального сертифікату ipsec – client.p12, який ви зберегли на диску, і натисніть кнопку "Далі".
У наступному вікні введіть пароль до цього сертифікату ("test"), і натисніть кнопку "Далі". Не позначайте цей ключ як експортований, якщо у вас немає для цього достатных причин - це знижує безпеку сертифікату, оскільки в цьому випадку він може бути викрадений.
У наступному вікні виберіть "Автоматично вибрать сховище на основі типу сертифіката" і натисніть "Далі". Виберіть "Готово".
Перевірте – сертифікат повинен опинитися в субконтейнері "Сертифікати контейнера", "Особисті".
Після успішної установки сертифікатів необхідно настроїти політикові IPSec (передбачається, що на робочій станції запущений сервіс "Служба IPSec", втім, він запущений там за замовчуванням). Для цього в запущеній консолі MMC додайте оснащення управління політиками IPSec (Консоль -> "Додати або видалити оснащення" -> виберіть "Додати" -> виберіть "Управління політикою безпеки IP" -> виберіть "Додати" -> виберіть "Локальний комп'ютер" -> виберіть "Готово" -> виберіть "Закрити" -> виберіть "OK").
Передбачається, що на робочій станції не встановлені ніякі політики IPSec, окрім встановлених за замовчуванням ("Клієнт", "Сервер Безпеки" і "Сервер"). Ці політики не активовані за замовчуванням, такими вони і залишаться. Якщо ж на комп'ютері вже є діюча політика IPSec, просто додайте в неї описуване нижче правило.
Для створення нової політики, клацніть правою кнопкою миші на "Політика безпеки IP на локальному комп'ютері" і виберіть "Створити політику безпеки IP". Запуститься майстер налаштування політики. Натисніть кнопку "Далі", і в наступному вікні вкажіть яке-небудь осмислене ім'я для створюваної політики, наприклад "Моя IPSec політика 192.168.0.122".
У наступному вікні залиште поміченим чекбокс "Використовувати за замовчуванням" і натисніть кнопку "Далі".
У наступному вікні залиште вибір за замовчуванням "Стандарт служб каталогів (протокол Kerberos V5) " і натисніть кнопку " Далі ". Не звертайте уваги, якщо отримаєте картку з попередженням про те, що протокол Kerberos може використовуватися тільки на комп'ютерах-членах домена - натисніть "Так".
У наступному вікні потрібно очистити чекбокс "Змінити властивості" і натисніть кнопку "Готово".
В результаті повинне вийти вікно властивостей нової, створеної політики. Натисніть кнопку "Додати", і запуститься майстер додавання правил. Натисніть кнопку "Далі", в наступному вікні залиште вибір за замовчуванням "Це правило не визначає тунель" і натисніть кнопку "Далі". У наступному вікні також залиште "Всі мережні підключення", і натисніть кнопку "Далі". У вікні – "Метод перевірки автентичності", що йде за ним, виберіть – "Використовувати сертифікат даного центру сертифікації (CA) ", натисніть кнопку – "Огляд" і виберіть кореневий сертифікат вашого CA. (Якщо ви не можете його знайти, це означає, що ви помилилися, і встановили його не в те сховище сертифікатів). Натисніть кнопку " Далі " і перейдіть до наступного вікна.
У наступному вікні вам треба створити новий фільтр. Натисніть кнопку "Додати", присвойте створюваному фільтру яке-небудь осмислене ім'я, і натисніть кнопку "Додати". Запуститься майстер створення фільтра. В якості "Адреси джерела пакетів" залиште "Моя IP адреса", в якості "Адреса призначення" вкажіть "Певний IP адреса" і введіть IP -адресу вашого сервера (192.168.0.122), з яким ви плануєте з'єднуватися з використанням IPSec. У наступному вікні виберіть "Виберіть тип протоколу", "Будь-який", і в наступному вікні натисніть "Готово".
Майстер створення фільтрів закриється, і в попередньому вікні (створення фільтра) ви побачите його таким, що з'явився в списку фільтрів. Натисніть "OK", вікно закриється, і в попередньому вікні, в самому низу списку ви побачите новий фільтр. Помітьте його, і натисніть "Далі".
Тепер треба вибрати дію нового фільтра ("Дія фільтра"). Виберіть "Потрібно безпека". Це означає, що усі пакети, які направляються на хост з вказаною адресою, повинні шифруватися. Якщо ви хочете посилити безпеку ще більше, натисніть кнопку "Змінити", і у вікні очистьте чекбокс "Приймати небезпечний зв'язок, але відповідати за допомогою IPSec" і помітьте чекбокс "Сеансові цикли безпечної пересилки (PFS)".
Примітка. Як вже говорилося раніше, у демона racoon існує проблема з регенерацією SPD. Для того, щоб ослабити наслідки, можна спробувати зменшити час життя SPD до мінімуму - 300 секунд.
Крім того, це підвищує міру захисту з'єднання (хоча і злегка збільшує об'єм трафіка і навантаження на процесори клієнта і сервера).
Для цього змініть властивості усіх пропонованих Методів Безпеки (натисніть "Змінити", натисніть "Загальні", і поставте значення 300 у полі "Створювати новий ключ").
І звернете увагу ось на що. У підручнику по 216 курсу Microsoft (Windows 2000 Network Infrastructure Administration) [2] сказано:
“Узгодження включає підтримку тільки достовірності і цілісності даних з використанням протоколу заголовка автентифікації (AH) або підтримку цілісності і конфіденційності даних з використанням протоколу ESP.”
З чого можна зробити висновок, що використовувати AH+ESP не можна. Схоже, що це дійсно так - якщо створити свій Метод Безпеки і включити там одночасно підтримку AH і ESP, такий метод не працює.
Отже, політика створена. Запустить Wireshark та запустить Захоплення пакетів. Наведіть та нажмить по ній правою кнопкою миші, і виберіть "Призначити". З цієї миті політика стала діючою.
Підключитеся до Інтернету, і спробуйте пропінгувати ваш сервер. Якщо ви побачили один або два рядки "Negotiating security" а потім почали йти відповіді, прийміть поздоровлення - у вас усе запрацювало. Якщо ж немає - включайте виведення налагоджувальної інформації на сервері, читайте і аналізуйте.
Після того як побачили відповіді від сервера - виберіть у вашого метода безпеки параметр "Снять". Зупиніть Захоплення пакетів в Wireshark. Підкресліть пакети, що відносяться до з’єднання IPSec.
Дата добавления: 2016-05-11; просмотров: 867;