Linux: Как автоматизировать создание защищенных паролем архивов резервных копий
Если вы не хотите углубляться в сложные решения для резервного копирования, всегда можно написать сценарий оболочки, который собирает данные и сжимает их. Из-за проблем с конфиденциальностью можно зашифровать архив резервных копий с помощью подходящего инструмента (zip/rar с паролем, gpg и т. Д.).
Теперь, когда речь заходит об автоматизации, возникает проблема раскрытия шагов с паролем, при которой возникают следующие проблемы:
- При запуске скрипта резервного копирования из консоли пароль просто вводится в интерактивном режиме.
- При запуске скрипта через cron это невозможно.
- Жесткое кодирование пароля в скрипте оболочки плохо и некрасиво.
Я считаю, что это обычная ситуация для этой проблемы. Каково общее или типичное решение проблемы шифрования данных с помощью пароля, но в автоматическом режиме?
3 ответа
Зачем изобретать велосипед, если у вас есть что-то вроде Duplicity, которое уже может сделать все это для вас? Duplicity обрабатывает инкрементные резервные копии и уже может быть запрограммирован для запуска через cron. Он также может использовать GPG для шифрования резервных копий и дешифрования при восстановлении. Еще лучше тот факт, что он может выполнять резервное копирование на месте или за пределами площадки несколькими способами.
Я бы порекомендовал двуличность и ftplicity в качестве внешнего интерфейса. С помощью этих инструментов вы можете подписывать и шифровать свои резервные копии с помощью GPG.
Одним из решений является шифрование архива с использованием асимметричного шифрования. Таким образом, серверу резервного копирования нужен только открытый ключ.
Вы можете сделать это с GPG, например. Это объясняется в разделах "Начало работы" руководства GPG ("Создание новой пары ключей", "Шифрование и дешифрование документов").
Но в целом я не вижу проблем с вводом пароля в какой-либо файл конфигурации. Просто сделайте контекстный файл нечитаемым для обычных пользователей. Тогда любому, кто сможет его прочитать, понадобятся права root / Admin, и люди, у которых все равно есть этот ящик.