我正在新机器上安装 Ubuntu。如何备份密码和密钥(又名 Seahorse 又名 GNOME Keyring),这样我可以将它们转移到新机器上吗?
答案1
密钥环数据存储在几个地方:
“密码”(GNOME Keyring 数据)存储在
~/.local/share/keyrings
“安全 Shell”数据(SSH 密钥)存储在
~/.ssh
“PGP 密钥”(包括 GPG 密钥)存储在
~/.gnupg
- 注意复制整个 .gnupg 文件夹也会复制你的信任数据,因此这可能比通过“密码和密钥”界面进行导入/导出更好。
您需要备份和恢复每个文件夹。最好不要使用闪存驱动器来执行此操作(请参阅下面的注释)。恢复文件夹时,请确保权限设置正确(请参阅下面的注释)。
有关闪存驱动器的注意事项
你应该避免使用闪存驱动器来存储/传输密钥,即使是暂时的,因为已删除的数据很容易从闪存驱动器中恢复除非你采取预防措施,例如加密驱动器。如果您有网络连接,通过 ssh 传输既方便又安全。
权限注意事项
当您恢复文件夹时,它们需要正确的所有权权限,您可以按如下方式应用:
chown --recursive USERNAME:USERNAME ~/.ssh
chmod 755 ~/.ssh
chmod 644 ~/.ssh/known_hosts
chmod 644 ~/.ssh/authorized_keys
chmod 600 ~/.ssh/config
chmod 600 ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa.pub
# repeat the last two for other public/private pairs
# you may need to "service ssh restart" after changing these values
chown --recursive USERNAME:USERNAME ~/.gnupg
chmod 700 ~/.gnupg
chmod 600 ~/.gnupg/*
# for any subfolders, you need to apply 700 to the folder
# and 600 to the files in that subfolder:
# chmod 700 ~/.gnupg/subfolder
# chmod 600 ~/.gnupg/subfolder/*
参考:
- .ssh 文件夹中私钥的权限?(超级用户)
- 修复 GNU/Linux 上的“警告:未受保护的私钥文件!”(操作指南极客)
- ssh 返回“~/.ssh/config 上的所有者或权限错误”(服务器故障)
- .gnupg 封闭文件夹的正确权限是什么? gpg:警告:配置文件上的不安全封闭目录权限(超级用户)
- 传统 Unix 权限符号,尤其是“数字符号”(维基百科)