Редакция: решение можно посмотреть в этом посте или, возможно, в каком-нибудь последующем сообщении в этой теме, так как сообщения нельзя редактировать после 30 дней.
Привет, это не прямо PVE-вопрос, но может кто-нибудь подскажет, как это реализовать. У меня несколько некластеризованных PVE-серверов, использующих полное системное шифрование через ZFS-шифрование. Один из них работает 24/7, а остальные запускаются только когда это необходимо (проклятые цены на электроэнергию…). Чтобы разблокировать корневые разделы после загрузки, я подключаюсь через SSH к dropbear-initramfs. Dropbear на сервере автоматически запускает "/usr/bin/zfsunlock", который запросит парольную фразу для разблокировки пула и затем завершит SSH-сессию. Так что единственное, что можно сделать, это ввести этот пароль. Это отлично работает, когда я вручную разблокирую серверы с помощью Putty, а затем могу скопировать-вставить мою парольную фразу, сохраненную в хранилище Keepass. Но я не могу найти решение, как автоматически разблокировать эти PVE-серверы. Например, каждое воскресенье в 00:00 все эти серверы должны быть доступны только для резервного копирования и задач обслуживания (PVE-серверы делают резервное копирование друг друга на виртуализированные PBS, ZFS scrubs, PBS prune/GC/verify, особенно важны еженедельные ZFS-снимок, потому что без них, если сервер снова загрузится, ZFS-репликация немедленно завершится, и все эти ТБ данных придется реплицировать снова, так как репликация с инкрементальными изменениями не сработает из-за отсутствующих снимков). Мне нужно быть дома, чтобы вручную разблокировать их или загрузить и разблокировать до того, как я уйду из дома, зная, что не вернусь до 00:00. Потом серверы работают целый день без использования, тратя деньги. Мне бы хотелось создать скрипт на 24/7 работающем PVE-сервере, который бы разблокировал эти другие серверы для меня. Не будет проблемой, если парольная фраза хранится на сервере, поскольку сам сервер полностью зашифрован, поэтому сохраненная парольная фраза недоступна, когда сервер выключен (= украден). Но я просто не могу найти способ открыть SSH-сессию из скрипта bash и автоматически ввести мою парольную фразу. Похоже, что передача stdin из файла в команду ssh не работает. У кого-нибудь есть идея, как это можно решить?
Привет, это не прямо PVE-вопрос, но может кто-нибудь подскажет, как это реализовать. У меня несколько некластеризованных PVE-серверов, использующих полное системное шифрование через ZFS-шифрование. Один из них работает 24/7, а остальные запускаются только когда это необходимо (проклятые цены на электроэнергию…). Чтобы разблокировать корневые разделы после загрузки, я подключаюсь через SSH к dropbear-initramfs. Dropbear на сервере автоматически запускает "/usr/bin/zfsunlock", который запросит парольную фразу для разблокировки пула и затем завершит SSH-сессию. Так что единственное, что можно сделать, это ввести этот пароль. Это отлично работает, когда я вручную разблокирую серверы с помощью Putty, а затем могу скопировать-вставить мою парольную фразу, сохраненную в хранилище Keepass. Но я не могу найти решение, как автоматически разблокировать эти PVE-серверы. Например, каждое воскресенье в 00:00 все эти серверы должны быть доступны только для резервного копирования и задач обслуживания (PVE-серверы делают резервное копирование друг друга на виртуализированные PBS, ZFS scrubs, PBS prune/GC/verify, особенно важны еженедельные ZFS-снимок, потому что без них, если сервер снова загрузится, ZFS-репликация немедленно завершится, и все эти ТБ данных придется реплицировать снова, так как репликация с инкрементальными изменениями не сработает из-за отсутствующих снимков). Мне нужно быть дома, чтобы вручную разблокировать их или загрузить и разблокировать до того, как я уйду из дома, зная, что не вернусь до 00:00. Потом серверы работают целый день без использования, тратя деньги. Мне бы хотелось создать скрипт на 24/7 работающем PVE-сервере, который бы разблокировал эти другие серверы для меня. Не будет проблемой, если парольная фраза хранится на сервере, поскольку сам сервер полностью зашифрован, поэтому сохраненная парольная фраза недоступна, когда сервер выключен (= украден). Но я просто не могу найти способ открыть SSH-сессию из скрипта bash и автоматически ввести мою парольную фразу. Похоже, что передача stdin из файла в команду ssh не работает. У кого-нибудь есть идея, как это можно решить?
