我想设置一个远程 git 仓库,我会定期推送到该仓库,这很容易做到。但我想将此远程仓库设置为LUKS(Linux统一密钥设置)格式化的驱动器(通过cryptsetup
),我希望该驱动器始终加密,除非它准备好接受 git 推送。
磁盘将始终处于连接状态,但我希望它已安装并准备好作为磁盘,并在推送完成后卸载。当然,我会拥有 SSH 访问权限和密码。
我希望这个过程是自动化的。我可以手动登录并安装驱动器,然后卸载它,但我不想每天多次重复这个过程,我希望它尽可能安全,比如不在远程 PC 上保存我的密码/密码文件等。
实现此目标的正确方法是什么? 这可行吗?
答案1
您可以使用 pam_mount 模块在 SSH 登录时挂载 LUKS 设备。然后只需通过 ssh 推送,输入密码后 PAM 就会挂载您的加密设备。
请参阅以下内容以了解如何配置 pam_mount:
http://mariospr.org/2008/03/08/automatically-mounting-luks-encrypted-partitions-with-pam_mount/