Шифрование паролей и секретов
По умолчанию во время установки компонентов происходит автоматическое шифрование файлов конфигурации для дополнительной защиты системы. Шифрование конфигурационных файлов (критичных файлов) Indeed PAM выполняется при помощи ключа шифрования AES-256, сгенерированного Data Protection API. Ключ сохраняется на сервере Indeed PAM и дополнительно шифруется Windows Data Protection API.
Шифрованию подлежат конфигурационные файлы компонентов:
- Core
- IdP
- Log Server
- ProxyApp
- RDP Proxy
- SSH Proxy
- PostgreSQL Proxy
- MSSQL Proxy
- Web Proxy
- Web Terminal
- Gateway Service
Расположение ключа:
- ОС Windows Server —
%ProgramData%\Indeed\Indeed PAM\Keys. - ОС Linux —
/etc/indeed/indeed-pam/keys/shared/protector.
Право на использование директории предоставляется только приложениям Indeed PAM.
Во время работы с системой может потребоваться редактирование файлов конфигурации. Редактировать можно только расшифрованные файлы. После внесения всех необходимых правок требуется снова зашифровать файлы конфигурации. Это можно сделать с помощью утилиты на Windows или скрипта на Linux.
Утилита на Windows
Снятие шифрования
Перейдите в каталог с дистрибутивом PAM по пути
%PAM_HOME%\indeed-pam-tools\configuration-protector\.Запустите PowerShell от имени администратора.
Выполните одну из команд для снятия шифрования.
Снятие шифрования со всех файлов конфигурации, расположенных в стандартных директориях:
.\Pam.Tools.Configuration.Protector.exe unprotectПримечаниеСтандартная директория
C:\inetpub\wwwroot\имя_компонента\appsettings.json.Снятие шифрования с файлов конфигурации отдельных компонентов:
.\Pam.Tools.Configuration.Protector.exe unprotect --component Имя_компонентаНапример:
.\Pam.Tools.Configuration.Protector.exe unprotect --component coreСнятие шифрования с файла, расположенного вне стандартной директории:
.\Pam.Tools.Configuration.Protector.exe unprotect --component Имя_компонента --file "путь_к_файлу"Например:
.\Pam.Tools.Configuration.Protector.exe unprotect --component Core --file "C:\inetpub\wwwroot\core\appsettings.json"ПримечаниеДопускается указать путь без кавычек, если он не содержит пробелов.
Шифрование
Перейдите в каталог с дистрибутивом PAM по пути
IndeedPAM_3.5\indeed-pam-tools\configuration-protector\.Запустите PowerShell от имени администратора.
Выполните одну из команд для шифрования.
Шифрование всех файлов конфигурации, расположенных в стандартных директориях:
.\Pam.Tools.Configuration.Protector.exe protectПримечаниеСтандартная директория
C:\inetpub\wwwroot\имя_компонента\appsettings.json.Шифрование файлов конфигурации отдельных компонентов:
.\Pam.Tools.Configuration.Protector.exe protect --component Имя_компонентаНапример:
.\Pam.Tools.Configuration.Protector.exe protect --component coreШифрование файла, расположенного вне стандартной директории:
.\Pam.Tools.Configuration.Protector.exe protect --component Имя_компонента --file "путь_к_файлу"Например:
.\Pam.Tools.Configuration.Protector.exe protect --component Core --file "C:\inetpub\wwwroot\core\appsettings.json"ПримечаниеДопускается указать путь без кавычек, если он не содержит пробелов.
Скрипт на Linux
Снятие шифрования
Перейдите в директорию с файлом протектора:
cd /etc/indeed/indeed-pam/toolsВыполните одну из команд для снятия шифрования.
Снятие шифрования со всех файлов конфигурации, расположенных в стандартных директориях:
bash protector.sh unprotectСнятие шифрования с файлов конфигурации отдельных компонентов:
bash protector.sh unprotect --component Имя_компонентаНапример:
bash protector.sh unprotect --component core
Шифрование
Перейдите в директорию с файлом протектора:
cd /etc/indeed/indeed-pam/toolsВыполните одну из команд для шифрования.
Шифрование всех файлов конфигурации, расположенных в стандартных директориях:
bash protector.sh protectШифрование файлов конфигурации отдельных компонентов:
bash protector.sh protect --component Имя_компонентаНапример:
bash protector.sh protect --component core