Обновление секретов

Ручная ротация SSH-ключей

Для смены SSH-ключей сервисов keystone, nova и neutron выполните следующие действия:

  1. Войдите в хранилище секретов Vault и перейдите в директорию secret_v2 / deployments / <LCM FQDN> / <имя региона> / passwords_yml.

  2. Обновите значение private_key и public_key для параметров:

    • keystone_ssh_key,

    • neutron_ssh_key,

    • nova_ssh_key.

  3. Запустите пайплайн с тегом -t keystone,nova,neutron в параметре KOLLA_ARGS.

Смена пароля УЗ администратора NetBox

  1. Сгенерируйте новый пароль для УЗ администратора системы управления инфраструктурой NetBox.

    Важно

    Пароль должен содержать не менее 12 символов и должен включать хотя бы одну заглавную букву, одну строчную букву и одну цифру.

  2. Войдите в интерфейс системы управления инфраструктурой NetBox https://netbox.<имя домена> с действующими учётными данными администратора.

  3. Перейдите в раздел Admin > Users.

  4. Нажмите на кнопку ✏️ напротив пользователя admin.

  5. Введите новый пароль в поля Password и Confirm password и нажмите Save.

  6. Повторно пройдите аутентификацию с обновлённым паролем.

  7. Войдите в интерфейс хранилища секретов https://vault.<имя домена>.

  8. Перейдите в директорию secret_v2 / deployments/ <LCM FQDN> / secrets / accounts, откройте вкладку Secrets и выберите действие Create New Version +.

  9. Замените значение переменной netbox_admin_password на новый пароль и нажмите Save.

Замена токена NetBox

  1. Войдите в интерфейс системы управления инфраструктурой NetBox https://netbox.<имя домена> с учётными данными администратора.

  2. Перейдите в раздел Admin > API Tokens и выберите действие + Add.

  3. Выберите пользователя в графе User.

  4. При необходимости укажите дату истечения токена в поле Expires в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС.

  5. При необходимости укажите описание токена в поле Description.

  6. При необходимости укажите разрешённые сети в поле Allowed IPs в формате «адрес сети/маска».

  7. Выберите действие Create.

  8. Отметьте чекбокс старого токена и нажмите Delete Selected.

  9. Подтвердите удаление нажатием Delete 1 tokens.

  10. Скопируйте новый токен в буфер обмена.

  11. Войдите в интерфейс хранилища секретов https://vault.<имя домена>.

  12. Перейдите в директорию secret_v2 / deployments/ <LCM FQDN> / secrets / accounts, откройте вкладку Secrets и выберите действие Create New Version +.

  13. Замените значение переменной NETBOX_TOKEN и нажмите Save.

Смена пароля УЗ администратора Nexus

  1. Сгенерируйте новый пароль для УЗ администратора платформы для хранения артефактов сборки Nexus.

    Важно

    Рекомендуемая длина пароля от 16 символов, допускается содержание заглавных и строчных букв, цифр и спецсимволов.

  2. Войдите в интерфейс платформы для хранения артефактов сборки Nexus https://nexus.<имя домена> с действующими учётными данными администратора.

  3. Перейдите на страницу администратора admin.

  4. Введите текущий пароль в поле Current Password и новый пароль в поля New Password и New Password (Confirm) и нажмите Save.

  5. Войдите в интерфейс хранилища секретов https://vault.<имя домена>.

  6. Перейдите в директорию secret_v2 / deployments/ <LCM FQDN> / secrets / accounts, откройте вкладку Secrets и выберите действие Create New Version +.

  7. Замените значение переменной nexus_admin_password на новый пароль и нажмите Save.

Замена пароля в контейнере Nexus

  1. Подключитесь к LCM-узлу по ssh с привилегиями пользователя root.

  2. Подключитесь к контейнеру gitlab-runner, введя команду:

    $ docker exec -it gitlab-runner bash
    
  3. Выполните команду:

    $ echo 'admin:<nexus_admin_password>' | base64
    

    Где <nexus_admin_password> — сгенерированный пароль для УЗ администратора платформы для хранения артефактов сборки Nexus. Значение доступно для просмотра в хранилище секретов.

  4. Полученное значение скопируйте и вставьте в файл /root/.docker/config.json.

  5. Выйдите из контейнера gitlab-runner.

Смена паролей доступа к связанным системам и службам

  1. Сгенерируйте новый пароль для базы данных netbox_db_password.

  2. Сгенерируйте новый пароль для брокера задач netbox_redis_password.

  3. Сгенерируйте новый пароль для кеширования данных netbox_redis_cache_password.

    Важно

    Рекомендуемая длина пароля от 16 символов, допускается содержание заглавных и строчных букв, цифр и спецсимволов.

  4. Войдите в интерфейс хранилища секретов https://vault.<имя домена>.

  5. Перейдите в директорию secret_v2 / deployments/ <LCM FQDN> / secrets / accounts, откройте вкладку Secrets и выберите действие Create New Version +.

  6. Замените значение переменных netbox_db_password, netbox_redis_cache_password и netbox_redis_password на новые пароли и нажмите Save.

Замена паролей в переменных окружения

  1. Подключитесь к LCM-узлу по ssh с привилегиями пользователя root.

  2. Сохраните текущие переменные окружения, введя команду:

    $ cp -r /installer/data/netbox/env /installer/data/netbox/env_backup
    
  3. Скачайте установочный архив из внутреннего репозитория или по внешней ссылке.

  4. Перейдите в папку со скаченным архивом и извлеките из него секреты, введя команду:

    $ tar --strip-components=3 -xzvf <имя файла архива>.tgz -C /installer/data/netbox/env installer/netbox-docker/env/*.env
    
  5. Перейдите в папку с извлечёнными файлами, введя команду:

    $ cd /installer/data/netbox/env
    
  6. В файле netbox.env в текстовом редакторе измените значения для переменных:

    • DB_PASSWORD – замените значение на сгенерированный пароль для базы данных,

    • REDIS_CACHE_PASSWORD – замените значение на сгенерированный пароль для кеширования данных,

    • REDIS_PASSWORD – замените значение на сгенерированный пароль для брокера задач,

    • SUPERUSER_PASSWORD – замените значение на пароль УЗ администратора системы управления инфраструктурой NetBox.

  7. В файле postgres.env в текстовом редакторе измените значение для переменной:

    • POSTGRES_PASSWORD – замените значение на сгенерированный пароль для базы данных.

  8. В файле redis-cache.env в текстовом редакторе измените значение для переменной:

    • REDIS_PASSWORD – замените значение на сгенерированный пароль для кеширования данных.

  9. В файле redis.env в текстовом редакторе измените значение для переменной:

    • REDIS_PASSWORD – замените значение на сгенерированный пароль для брокера задач.

Замена паролей в системах

  1. Подключитесь к контейнеру netbox-postgres, введя команду:

    $ docker exec -it netbox-postgres bash
    
  2. Последовательно введите команды:

    $ psql -h 127.0.0.1 -U netbox -d netbox
    $ \c postgres
    $ ALTER USER netbox WITH PASSWORD 'new_password';
    

    Где new_password — сгенерированный пароль для базы данных. Значение доступно для просмотра в хранилище секретов.

  3. Выйдите из контейнера netbox-postgres.

  4. Подключитесь к контейнеру netbox-redis, введя команду:

    $ docker exec -it netbox-redis  /bin/sh
    
  5. Последовательно введите команды:

    $ redis-cli
    $ AUTH <old_pass>
    $ set mypasswd <new_pass>
    

    Где <old_pass> и <new_pass> — старый и новый пароли для брокера задач. Значения доступны для просмотра в хранилище секретов.

  6. Выйдите из контейнера netbox-redis.

  7. Подключитесь к контейнеру netbox-redis-cache, введя команду:

    $ docker exec -it netbox-redis-cache /bin/sh
    
  8. Последовательно введите команды:

    $ redis-cli
    $ AUTH <old_pass>
    $ set mypasswd <new_pass>
    

    Где <old_pass> и <new_pass> — старый и новый пароли для кеширования данных. Значения доступны для просмотра в хранилище секретов.

  9. Выйдите из контейнера netbox-redis-cache.

  10. Пересоздайте контейнеры с новыми учётными данными, последовательно введя команды:

    $ . /installer/config/settings
    $ docker compose -f $CFG_HOME/netbox-compose.yml up –d
    
  11. Замените переменные окружения файлами из резервной копии, введя команду:

    $ mv /installer/data/netbox/env_backup /installer/data/netbox/env