Перейти к основному содержимому

Смена SSH ключей

Внимание!

Данное действие является необязательным.

В случае необходимости смены ключей SSH скопировать архив ssh-changer-main.tar.gz на ПК с ОС Linux, который имеет сетевую связность с хостами и доступом в интернет, или в папку /root на гипервизор кластера с СГУ при кластерном решении.

Распаковать содержимое архива ssh-changer-main.tar.gz:

tar -xzf ssh-changer-main.tar.gz

Перейти внутрь каталога с распакованным архивом:

cd ssh-changer-main

Создать локальное окружение для python:

python3 -m venv .venv

Активировать виртуальное окружение:

source .venv/bin/activate

Установить необходимые зависимости для работы:

pip install -r requirements.txt

Установить роли ansible:

./dependencies.sh

(может вернуть сообщение, что всё уже установлено) Создать файл хостов, на которых надо заменить ключи, можно воспользоваться файлом-примером:

cp hosts.ini.sample hosts.ini

Подготовить (отредактировать по образцу) файл hosts.ini, указав реальные данные серверов:

Рисунок 18 – Файл hosts.ini

Если серверов больше 3-х, то необходимо дописать строки по образцу, указывая сервера по порядку (server4 server5 и т.д.). Указывать реальные hostname серверов необязательно.

В значении ansible_host для каждого сервера указать его реальный IPv4 адрес

Запустить выполнение роли по созданию и смене ключей:

ansible-playbook -i hosts.ini site.yml

Убедиться в корректности отработки роли по выводу в терминале в блоке PLAY RECAP, должны отсутствовать записи failed=1.

Роль самостоятельно сгенерирует приватные и публичные ключи во вложенном каталоге keys и установит на сервера, чьи IPv4 адреса были указаны в файле hosts.ini.

Важно!

После смены SSH-ключей требуется перезапустить контейнер c СГУ (контейнеры в случае наличия кластера высокой доступности СГУ RAFT) командой:

docker restart hcs