|
@@ -1,6 +1,5 @@
|
|
|
# Руководство пользователя [CLiPE (Centralized Linux Policy Engine)](https://github.com/ccrayp/CLiPE)
|
|
# Руководство пользователя [CLiPE (Centralized Linux Policy Engine)](https://github.com/ccrayp/CLiPE)
|
|
|
|
|
|
|
|
-\---
|
|
|
|
|
|
|
|
|
|
## Аннотация
|
|
## Аннотация
|
|
|
|
|
|
|
@@ -8,29 +7,40 @@
|
|
|
|
|
|
|
|
Документ предназначен для администраторов и инженеров по безопасности, осуществляющих развёртывание, настройку и эксплуатацию системы CLiPE.
|
|
Документ предназначен для администраторов и инженеров по безопасности, осуществляющих развёртывание, настройку и эксплуатацию системы CLiPE.
|
|
|
|
|
|
|
|
-\---
|
|
|
|
|
|
|
+---
|
|
|
|
|
|
|
|
## Содержание
|
|
## Содержание
|
|
|
|
|
|
|
|
-1. [Введение](#1-введение)
|
|
|
|
|
-
|
|
|
|
|
- * 1.1. [Область применения](#11-область-применения)
|
|
|
|
|
- * 1.2. [Краткое описание возможностей](#12-краткое-описание-возможностей)
|
|
|
|
|
- * 1.3. [Уровень подготовки пользователя](#13-уровень-подготовки-пользователя)
|
|
|
|
|
- * 1.4. [Перечень эксплуатационной документации](#14-перечень-эксплуатационной-документации)
|
|
|
|
|
-2. [Назначение и условия применения](#2-назначение-и-условия-применения)
|
|
|
|
|
-3. [Подготовка к работе](#3-подготовка-к-работе)
|
|
|
|
|
-
|
|
|
|
|
- * 3.1. [Состав и содержание дистрибутивного носителя данных](#31-состав-и-содержание-дистрибутивного-носителя-данных)
|
|
|
|
|
- * 3.2. [Порядок загрузки данных и программ](#32-порядок-загрузки-данных-и-программ)
|
|
|
|
|
- * 3.3. [Порядок проверки работоспособности](#33-порядок-проверки-работоспособности)
|
|
|
|
|
-4. [Описание операций](#4-описание-операций)
|
|
|
|
|
-5. [Аварийные ситуации](#5-аварийные-ситуации)
|
|
|
|
|
-6. [Рекомендации по освоению](#6-рекомендации-по-освоению)
|
|
|
|
|
-7. [Термины и сокращения](#7-термины-и-сокращения)
|
|
|
|
|
-8. [Лист регистрации изменений](#лист-регистрации-изменений)
|
|
|
|
|
-
|
|
|
|
|
-\---
|
|
|
|
|
|
|
+- [Руководство пользователя CLiPE (Centralized Linux Policy Engine)](#руководство-пользователя-clipe-centralized-linux-policy-engine)
|
|
|
|
|
+ - [Аннотация](#аннотация)
|
|
|
|
|
+ - [Содержание](#содержание)
|
|
|
|
|
+ - [1. Введение](#1-введение)
|
|
|
|
|
+ - [1.1. Область применения](#11-область-применения)
|
|
|
|
|
+ - [1.2. Краткое описание возможностей](#12-краткое-описание-возможностей)
|
|
|
|
|
+ - [1.3. Уровень подготовки пользователя](#13-уровень-подготовки-пользователя)
|
|
|
|
|
+ - [1.4. Перечень эксплуатационной документации](#14-перечень-эксплуатационной-документации)
|
|
|
|
|
+ - [2. Назначение и условия применения](#2-назначение-и-условия-применения)
|
|
|
|
|
+ - [3. Подготовка к работе](#3-подготовка-к-работе)
|
|
|
|
|
+ - [3.1. Состав и содержание дистрибутивного носителя данных](#31-состав-и-содержание-дистрибутивного-носителя-данных)
|
|
|
|
|
+- [3.2. Порядок загрузки данных и программ](#32-порядок-загрузки-данных-и-программ)
|
|
|
|
|
+ - [3.3. Порядок проверки работоспособности](#33-порядок-проверки-работоспособности)
|
|
|
|
|
+ - [4. Описание операций](#4-описание-операций)
|
|
|
|
|
+ - [4.1. Управление хостами и пользователями](#41-управление-хостами-и-пользователями)
|
|
|
|
|
+ - [4.2. Управление политиками и правилами](#42-управление-политиками-и-правилами)
|
|
|
|
|
+ - [4.3. Добавление модуля в PAM-таблицу](#43-добавление-модуля-в-pam-таблицу)
|
|
|
|
|
+ - [4.4. Удаление модуля с хоста](#44-удаление-модуля-с-хоста)
|
|
|
|
|
+ - [4.5. Просмотр логов](#45-просмотр-логов)
|
|
|
|
|
+ - [5. Аварийные ситуации](#5-аварийные-ситуации)
|
|
|
|
|
+ - [5.1. Сервер CLiPE недоступен](#51-сервер-clipe-недоступен)
|
|
|
|
|
+ - [5.2. Все пользователи заблокированы на хосте](#52-все-пользователи-заблокированы-на-хосте)
|
|
|
|
|
+ - [5.3. Ошибка при выполнении `make uninstall`](#53-ошибка-при-выполнении-make-uninstall)
|
|
|
|
|
+ - [5.4. Ошибки SSL/TLS](#54-ошибки-ssltls)
|
|
|
|
|
+ - [6. Рекомендации по освоению](#6-рекомендации-по-освоению)
|
|
|
|
|
+ - [7. Термины и сокращения](#7-термины-и-сокращения)
|
|
|
|
|
+ - [8. Контакты для связи](#8-контакты-для-связи)
|
|
|
|
|
+ - [Лист регистрации изменений](#лист-регистрации-изменений)
|
|
|
|
|
+
|
|
|
|
|
+---
|
|
|
|
|
|
|
|
## 1\. Введение
|
|
## 1\. Введение
|
|
|
|
|
|
|
@@ -75,7 +85,7 @@ CLiPE предоставляет следующие возможности:
|
|
|
* Документацией по PAM: https://man7.org/linux/man-pages/man5/pam.d.5.html
|
|
* Документацией по PAM: https://man7.org/linux/man-pages/man5/pam.d.5.html
|
|
|
* Документацией Docker: https://docs.docker.com
|
|
* Документацией Docker: https://docs.docker.com
|
|
|
|
|
|
|
|
-\---
|
|
|
|
|
|
|
+---
|
|
|
|
|
|
|
|
## 2\. Назначение и условия применения
|
|
## 2\. Назначение и условия применения
|
|
|
|
|
|
|
@@ -93,14 +103,14 @@ CLiPE предоставляет следующие возможности:
|
|
|
**Минимальные требования к среде:**
|
|
**Минимальные требования к среде:**
|
|
|
|
|
|
|
|
|Компонент|Требования|
|
|
|Компонент|Требования|
|
|
|
-|-|-|
|
|
|
|
|
|
|
+|---|---|
|
|
|
|ОС сервера|Ubuntu 24.04 (AMD64 / ARM64) или совместимая|
|
|
|ОС сервера|Ubuntu 24.04 (AMD64 / ARM64) или совместимая|
|
|
|
|ОС хоста интеграции|Ubuntu 24.04 или совместимая Linux-система с PAM|
|
|
|ОС хоста интеграции|Ubuntu 24.04 или совместимая Linux-система с PAM|
|
|
|
|Docker|Установлен на сервере|
|
|
|Docker|Установлен на сервере|
|
|
|
|Сеть|TCP-доступ от хостов интеграции до сервера CLiPE|
|
|
|Сеть|TCP-доступ от хостов интеграции до сервера CLiPE|
|
|
|
|SSL|Сертификат сервера, подписанный центром сертификации|
|
|
|SSL|Сертификат сервера, подписанный центром сертификации|
|
|
|
|
|
|
|
|
-\---
|
|
|
|
|
|
|
+---
|
|
|
|
|
|
|
|
## 3\. Подготовка к работе
|
|
## 3\. Подготовка к работе
|
|
|
|
|
|
|
@@ -130,14 +140,14 @@ CLiPE/
|
|
|
|
|
|
|
|
# 3.2. Порядок загрузки данных и программ
|
|
# 3.2. Порядок загрузки данных и программ
|
|
|
|
|
|
|
|
-* \[ ] **3.2.1. Получение исходного кода**
|
|
|
|
|
|
|
+* [ ] **3.2.1. Получение исходного кода**
|
|
|
|
|
|
|
|
```bash
|
|
```bash
|
|
|
git clone https://github.com/ccrayp/CLiPE.git
|
|
git clone https://github.com/ccrayp/CLiPE.git
|
|
|
cd CLiPE
|
|
cd CLiPE
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-* \[ ] **3.2.2. Настройка SSL-сертификатов**
|
|
|
|
|
|
|
+* [ ] **3.2.2. Настройка SSL-сертификатов**
|
|
|
|
|
|
|
|
Если у вас нет готового сертификата, выполните следующие шаги.
|
|
Если у вас нет готового сертификата, выполните следующие шаги.
|
|
|
|
|
|
|
@@ -180,13 +190,13 @@ openssl x509 -req \\
|
|
|
|
|
|
|
|
Полученные файлы `ca.crt`, `server.crt`, `server.key` разместите в директории `ssl/`.
|
|
Полученные файлы `ca.crt`, `server.crt`, `server.key` разместите в директории `ssl/`.
|
|
|
|
|
|
|
|
-* \[ ] **3.2.3. Настройка конфигурации сервера**
|
|
|
|
|
|
|
+* [ ] **3.2.3. Настройка конфигурации сервера**
|
|
|
|
|
|
|
|
Создайте файл `.env` в директории `server/` на основе примера.
|
|
Создайте файл `.env` в директории `server/` на основе примера.
|
|
|
|
|
|
|
|
> \*\*Важно:\*\* Замените значение `JWT\_SECRET\_KEY`, `INSTALLER\_TOKEN`, `DECISION\_TOKEN` на уникальные секретные ключи перед развёртыванием.
|
|
> \*\*Важно:\*\* Замените значение `JWT\_SECRET\_KEY`, `INSTALLER\_TOKEN`, `DECISION\_TOKEN` на уникальные секретные ключи перед развёртыванием.
|
|
|
|
|
|
|
|
-* \[ ] **3.2.4. Развёртывание сервера CLiPE**
|
|
|
|
|
|
|
+* [ ] **3.2.4. Развёртывание сервера CLiPE**
|
|
|
|
|
|
|
|
Убедитесь, что Docker установлен:
|
|
Убедитесь, что Docker установлен:
|
|
|
|
|
|
|
@@ -201,7 +211,7 @@ cd server/
|
|
|
make build
|
|
make build
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-* \[ ] **3.2.5. Подготовка хоста для интеграции**
|
|
|
|
|
|
|
+* [ ] **3.2.5. Подготовка хоста для интеграции**
|
|
|
|
|
|
|
|
**Шаг 1.** Скопируйте сертификат CA в папку `integration/`:
|
|
**Шаг 1.** Скопируйте сертификат CA в папку `integration/`:
|
|
|
|
|
|
|
@@ -221,7 +231,7 @@ http://access.manager
|
|
|
scp -r ./integration user\_name@host\_name:\~/path/to/directory
|
|
scp -r ./integration user\_name@host\_name:\~/path/to/directory
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-* \[ ] **3.2.6. Сборка PAM-модуля (при необходимости)**
|
|
|
|
|
|
|
+* [ ] **3.2.6. Сборка PAM-модуля (при необходимости)**
|
|
|
|
|
|
|
|
> Готовая библиотека `pam\_clipe.so` для Ubuntu 24.04 ARM64 уже находится в папке `/integration`. Сборка требуется только при использовании другой архитектуры или ОС.
|
|
> Готовая библиотека `pam\_clipe.so` для Ubuntu 24.04 ARM64 уже находится в папке `/integration`. Сборка требуется только при использовании другой архитектуры или ОС.
|
|
|
|
|
|
|
@@ -244,7 +254,7 @@ cmake --build build
|
|
|
cp build/lib/pam\_clipe.so ../integration
|
|
cp build/lib/pam\_clipe.so ../integration
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-* \[ ] **3.2.7. Установка модуля на хост**
|
|
|
|
|
|
|
+* [ ] **3.2.7. Установка модуля на хост**
|
|
|
|
|
|
|
|
На целевом хосте перейдите в скопированную папку `integration/` и выполните:
|
|
На целевом хосте перейдите в скопированную папку `integration/` и выполните:
|
|
|
|
|
|
|
@@ -258,7 +268,7 @@ sudo make install
|
|
|
* Регистрацию хоста и его пользователей в системе CLiPE.
|
|
* Регистрацию хоста и его пользователей в системе CLiPE.
|
|
|
* Автоматическое копирование `pam\_clipe.so` в системную директорию PAM.
|
|
* Автоматическое копирование `pam\_clipe.so` в системную директорию PAM.
|
|
|
|
|
|
|
|
-!\[install](https://raw.githubusercontent.com/ccrayp/CLiPE/refs/heads/main/images/script\_install.png)
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
### 3.3. Порядок проверки работоспособности
|
|
### 3.3. Порядок проверки работоспособности
|
|
|
|
|
|
|
@@ -298,7 +308,7 @@ sudo tail -f /var/log/auth.log
|
|
|
|
|
|
|
|
При успешной работе в логах должны появляться записи с решением `ALLOW` или `DENY`.
|
|
При успешной работе в логах должны появляться записи с решением `ALLOW` или `DENY`.
|
|
|
|
|
|
|
|
-\---
|
|
|
|
|
|
|
+---
|
|
|
|
|
|
|
|
## 4\. Описание операций
|
|
## 4\. Описание операций
|
|
|
|
|
|
|
@@ -333,7 +343,7 @@ sudo make refresh
|
|
|
account required pam\_clipe.so
|
|
account required pam\_clipe.so
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-!\[common-account](https://raw.githubusercontent.com/ccrayp/CLiPE/refs/heads/main/images/common-account.png)
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -343,7 +353,7 @@ account required pam\_clipe.so
|
|
|
account required pam\_clipe.so debug
|
|
account required pam\_clipe.so debug
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-!\[common-account-debug](https://raw.githubusercontent.com/ccrayp/CLiPE/refs/heads/main/images/common-account\_debug.png)
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
### 4.4. Удаление модуля с хоста
|
|
### 4.4. Удаление модуля с хоста
|
|
|
|
|
|
|
@@ -353,7 +363,7 @@ account required pam\_clipe.so debug
|
|
|
sudo make uninstall
|
|
sudo make uninstall
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-!\[uninstall](https://raw.githubusercontent.com/ccrayp/CLiPE/refs/heads/main/images/script\_uninstall.png)
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
> \*\*Важно:\*\* Если `pam\_clipe.so` ещё используется в PAM-таблицах, удаление будет прервано с соответствующей ошибкой. Сначала удалите запись из всех PAM-таблиц.
|
|
> \*\*Важно:\*\* Если `pam\_clipe.so` ещё используется в PAM-таблицах, удаление будет прервано с соответствующей ошибкой. Сначала удалите запись из всех PAM-таблиц.
|
|
|
|
|
|
|
@@ -375,7 +385,7 @@ sudo tail -f /var/log/auth.log
|
|
|
**В отладочном режиме** дополнительно выводится подробная информация о запросе и ответе сервера.
|
|
**В отладочном режиме** дополнительно выводится подробная информация о запросе и ответе сервера.
|
|
|
!\[allow](https://raw.githubusercontent.com/ccrayp/CLiPE/refs/heads/main/images/log\_allow\_debug.png)
|
|
!\[allow](https://raw.githubusercontent.com/ccrayp/CLiPE/refs/heads/main/images/log\_allow\_debug.png)
|
|
|
|
|
|
|
|
-\---
|
|
|
|
|
|
|
+---
|
|
|
|
|
|
|
|
## 5\. Аварийные ситуации
|
|
## 5\. Аварийные ситуации
|
|
|
|
|
|
|
@@ -420,7 +430,7 @@ sudo tail -f /var/log/auth.log
|
|
|
2. Проверьте срок действия сертификатов сервера (`server.crt`).
|
|
2. Проверьте срок действия сертификатов сервера (`server.crt`).
|
|
|
3. При истечении срока — перевыпустите сертификат и перезапустите сервер.
|
|
3. При истечении срока — перевыпустите сертификат и перезапустите сервер.
|
|
|
|
|
|
|
|
-\---
|
|
|
|
|
|
|
+---
|
|
|
|
|
|
|
|
## 6\. Рекомендации по освоению
|
|
## 6\. Рекомендации по освоению
|
|
|
|
|
|
|
@@ -442,7 +452,7 @@ sudo tail -f /var/log/auth.log
|
|
|
## 7\. Термины и сокращения
|
|
## 7\. Термины и сокращения
|
|
|
|
|
|
|
|
|Термин / Сокращение|Расшифровка и описание|
|
|
|Термин / Сокращение|Расшифровка и описание|
|
|
|
-|-|-|
|
|
|
|
|
|
|
+|---|---|
|
|
|
|**CLiPE**|Centralized Linux Policy Engine — централизованный движок политик для Linux|
|
|
|**CLiPE**|Centralized Linux Policy Engine — централизованный движок политик для Linux|
|
|
|
|**PAM**|Pluggable Authentication Modules — подключаемые модули аутентификации Linux|
|
|
|**PAM**|Pluggable Authentication Modules — подключаемые модули аутентификации Linux|
|
|
|
|**REST API**|Representational State Transfer API — архитектурный стиль взаимодействия компонентов|
|
|
|**REST API**|Representational State Transfer API — архитектурный стиль взаимодействия компонентов|
|
|
@@ -462,19 +472,19 @@ sudo tail -f /var/log/auth.log
|
|
|
|**CRUD Server**|Компонент CLiPE, предоставляющий API управления объектами|
|
|
|**CRUD Server**|Компонент CLiPE, предоставляющий API управления объектами|
|
|
|
|**`pam\_clipe.so`**|Динамическая библиотека PAM-модуля CLiPE|
|
|
|**`pam\_clipe.so`**|Динамическая библиотека PAM-модуля CLiPE|
|
|
|
|
|
|
|
|
-\---
|
|
|
|
|
|
|
+---
|
|
|
|
|
|
|
|
## 8\. Контакты для связи
|
|
## 8\. Контакты для связи
|
|
|
|
|
|
|
|
[TG](https://t.me/ccrayp)
|
|
[TG](https://t.me/ccrayp)
|
|
|
[VK](https://vk.ru/ccrayp)
|
|
[VK](https://vk.ru/ccrayp)
|
|
|
|
|
|
|
|
-\---
|
|
|
|
|
|
|
+---
|
|
|
|
|
|
|
|
## Лист регистрации изменений
|
|
## Лист регистрации изменений
|
|
|
|
|
|
|
|
|№|Дата|Раздел|Описание изменения|Автор|
|
|
|№|Дата|Раздел|Описание изменения|Автор|
|
|
|
-|-|-|-|-|-|
|
|
|
|
|
|
|
+|---|---|---|---|---|
|
|
|
|1|2026-05-17|Все разделы|Первоначальное создание документа|Roman Mikhaylov|
|
|
|1|2026-05-17|Все разделы|Первоначальное создание документа|Roman Mikhaylov|
|
|
|
|2|2026-05-17|2, 3.2.3, 3.3, 4.2, 5.1|Актуализация данных|Roman Mikhaylov|
|
|
|2|2026-05-17|2, 3.2.3, 3.3, 4.2, 5.1|Актуализация данных|Roman Mikhaylov|
|
|
|
|3|2026-05-17|3.2.7, 4.1, 4.3, 4.4, 4.5|Добавление скриншотов|Roman Mikhaylov|
|
|
|3|2026-05-17|3.2.7, 4.1, 4.3, 4.4, 4.5|Добавление скриншотов|Roman Mikhaylov|
|