CIDR: Обмеження доступу до Платформних та реєстрових компонентів
🌐 Цей документ доступний українською та англійською мовами. Використовуйте перемикач у правому верхньому куті, щоб змінити версію. |
1. Загальні функціональні можливості
Задля безпечного доступу до компонентів кластера OpenShift 4.x, можна обмежувати доступ до компонентів, що використовуються на Платформі.
- Виділяють три основних типи компонентів у системі:
-
-
Платформні
-
Реєстрові
-
Інфраструктурні
-
Платформа реалізує функціональність блокування доступу до кожного маршруту (route) на рівні HAProxy[1].
Дозволені (whitelist) IP-адреси необхідно обов’язково вказувати разом із маскою підмережі. Іншими словами, адміністратор може вказати як одну IP-адресу ( Детальніше про маски підмережі та IPv4-адресацію ви можете переглянути за посиланням. |
2. Обмеження доступу до компонентів реєстру
2.1. Додавання CIDR при створенні реєстру
При створенні реєстру Адміністратором, інтерфейс Control Plane надає можливість вказати IP-адреси, з яких буде дозволено доступ до реєстрових компонентів.
Адміністратор має можливість задавати список IP-адрес окремо для Кабінету посадової особи, або отримувача послуг, та окремо для адміністративних компонентів.
Кожен компонент має містити публічну IP-адресу кластера. Keycloak, своєю чергою, має містити всі CIDR з інших операційних зон, або бути доступним усім, якщо Кабінет отримувача послуг не має обмежень. |
- Для того, щоб налаштувати CIDR для компонентів реєстру, виконайте наступні кроки:
-
-
Увійдіть до адміністративної панелі керування платформою та реєстрами Control Plane, використовуючи попередньо отримані логін та пароль.
Зображення 1. Сторінка входу до адміністративної панелі -
Відкрийте меню Реєстри та створіть новий реєстр, натиснувши відповідну кнопку.
Детальніше про створення реєстрів ви можете переглянути за посиланням:
Зображення 2. Розділ керування реєстрами -
Пройдіть усіма кроками створення реєстру та зупиніться на секції Обмеження доступу.
Зображення 3. Інтерфейс додавання CIDRТут ви можете додавати CIDR для Кабінетів користувача та адміністративних компонентів.
-
Натисніть
+
(Додати
). У новому вікні введіть IP-адреси та маски підмережі, до яких вони належать. Далі натиснітьПідтвердити
.Допустимі символи "0-9", "/", ".". Приклад: 172.16.0.0/12. Зображення 4. Внесення IP-адрес(и) та маски підмережіЯкщо вказані IP-адреси та маска не відповідають формату
a.b.c.d/х
, то адміністратор отримає системну помилку:Перевірте формат IP-адреси
-
Додайте необхідну кількість CIDR. Результат додавання може виглядати так:
Зображення 5. Результат додавання CIDR -
Натисніть
Далі
, щоб завершити створення реєстру.В результаті формується запит на внесення змін до конфігурації реєстру, переглянути який можна у секції Запити на оновлення.
Детальніше про перегляд та підтвердження запитів у Control Plane ви можете ознайомитися на сторінці Підтвердження запитів на внесення змін до реєстру -
Відкрийте сформований запит, натиснувши іконку перегляду — 👁.
-
У новому вікні зіставте 2 версії змін, переконайтеся, що внесені вами дані вірні та натисніть
Підтвердити
.Запропоновані зміни вносяться до конфігурації файлу deploy-templates/values.yaml у разі підтвердження.
Введені IP-адреси додаються до конфігурації у файлі values.yaml у наступному форматі:
+ .Додавання дозволених IP-адрес та підмереж до конфігурації реєстру у values.yaml
global: whiteListIP: adminRoutes: "192.168.1.64/26 172.16.0.192/27" officerPortal: "192.168.1.240/29" citizenPortal: "0.0.0.0/0"
-
Дочекайтеся, доки Jenkins виконає збірку
MASTER-Build-<registry-name>
. Це може зайняти декілька хвилин.
-
2.2. Додавання або видалення CIDR при редагуванні реєстру
При редагуванні вже наявного реєстру, адміністратор також може задати або видалити IP-адреси, з яких буде дозволено доступ до реєстрових компонентів. Інтерфейс адміністрування платформи оновлює внесені IP-адреси у файлі values.yaml в конфігураційному репозиторії реєстру.
Детальніше про редагування реєстрів ви можете переглянути за посиланням: |
Інтерфейс додавання та принцип роботи із CIDR є однаковим як при створенні реєстру, так і при редагуванні (див. розділ Додавання CIDR при створенні реєстру цього документа). |
За необхідності, при редагуванні реєстру ви можете видалити наявні CIDR зі списку. Для цього перейдіть до розділу Обмеження доступу, натисніть 🗑
(іконку видалення) CIDR та підтвердьте свої дії.
3. Обмеження доступу до платформних, інфраструктурних та інших компонентів
У розділі Керування Платформою адміністратор може задати CIDR для обмеження зовнішнього доступу для платформних та інфраструктурних компонентів (роутів). Інтерфейс адміністрування платформи створює запит на зміну (MR) в файлі values.yaml. Після затвердження адміністратором, пайплайн Master-Build-cluster-mgmt
виконує оновлення та додавання необхідних анотацій.
CIDR внесені адміністратором для реєстру повинні також бути додані для платформних компонентів автоматично. |
-
Відкрийте меню Керування Платформою.
-
У правому верхньому куті сторінки натисніть
Редагувати
. -
На сторінці, що відкрилася, знайдіть секцію Перелік дозволених CIDR.
-
Натисніть
+
(Додати
). У новому вікні введіть IP-адреси та маски підмережі, до яких вони належать. Далі натиснітьПідтвердити
.Допустимі символи "0-9", "/", ".". Приклад: 172.16.0.0/12. -
Введіть необхідну кількість CIDR та натисніть
Підтвердити
.Зображення 6. Внесення IP-адрес(и) та маски підмережіВ результаті формується запит на внесення змін до конфігурації Платформи, переглянути який можна у секції Запити на оновлення.
Детальніше про перегляд та підтвердження запитів у Control Plane ви можете ознайомитися на сторінці Підтвердження запитів на внесення змін до реєстру -
Відкрийте сформований запит, натиснувши іконку перегляду — 👁.
-
У новому вікні зіставте 2 версії змін, переконайтеся, що внесені вами дані вірні та натисніть
Підтвердити
.Запропоновані зміни вносяться до конфігурації файлу deploy-templates/values.yaml у разі підтвердження. Введені IP-адреси додаються до конфігурації Платформи у файлі values.yaml у наступному форматі:
Приклад 1. Додавання дозволених IP-адрес та підмереж та до конфігурації Платформи у values.yamlglobal: whiteListIP: adminRoutes: "192.168.1.64/26 172.16.0.192/27"
-
Дочекайтеся, доки Jenkins виконає збірку
Master-Build-cluster-mgmt
. Це може зайняти декілька хвилин.