В статье рассмотрены следующие темы:
- насколько безопасно менять SSH-ключи на действующей платформе;
- как заменить SSH-ключи на всех узлах;
- как проверить логи замены ключей.
Замена SSH-ключа может потребоваться в целях безопасности. Например, при подозрении, что текущий ключ был скомпрометирован.
Безопасность
Замена SSH-ключей на действующей платформе не нарушит её работоспособность и безопасность при выполнении следующих рекомендаций:
- перед заменой ключа переведите узлы в режим обслуживания;
- в процессе обновления ключей не выполняйте операции на узле.
Как обновить SSH-ключ
После замены ключей перезапустятся следующие сервисы на узлах:
- hawatch — сервис взаимодействия с отказоустойчивым кластером;
- node_alert — сервис слежения за узлами кластера;
- monitor — сервис сбора и отображения информации о текущем состоянии ВМ и узлов кластера.
Работа этих сервисов будет приостановлена на время перезапуска. Когда сервисы возобновят работу, платформа проведёт их повторный опрос для получения информации.
Чтобы обновить SSH-ключ:
- Подключитесь к серверу с платформой по SSH.
-
Выполните команду:
docker exec -it vm_box curl 'input:1500/vm/v3/ssh_key_replace' -X POST -H 'internal-auth: on' --data-raw '{}'
После выполнения команды платформа сформирует новые ключи и заменит старые ключи на узлах кластера.
-
Перезапустите платформу:
vm restart
Логирование
SSH-ключи и логи по замене ключей находятся в контейнере vm_box:
- /var/log/node_ssh_key_replace.log — лог замены ключей;
- /opt/ispsystem/vm/etc/.ssh — директория с ключами. Старые ключи имеют расширение .bak.
Подробнее о работе с контейнерами и структуре платформы см. в статье Структура VMmanager.