绕过ssh密钥文件权限检查

Modified on: Fri, 11 Oct 2019 16:20:02 +0800

我有一个加密的FAT卷(用于兼容性),其中包含私钥文件和其他敏感数据。

我想使用私钥通过SSH连接到我的服务器,但当然,由于FAT不支持文件权限,它会忽略我的密钥,说它的权限太开放了。

所以目前我正在使用0600权限将其复制到我硬盘上的其他位置,使用它然后安全地删除它,但这很痛苦。

有没有办法绕过这个ssh / scp命令行的权限检查?

编辑:精确:它是OS X上的TrueCrypt卷。

解决方案:下面接受的答案解决了我的问题(使用位于Mac OS X的TrueCrypt卷上的SSH密钥文件),但这是一种解决方法。 看起来没有办法“绕过密钥文件权限检查”。

最佳答案

AFAIK,没有办法绕过使用ssh或ssh-add的密钥文件权限检查(你不能用命名管道等来欺骗它)。此外,你实际上并不想欺骗ssh,只是为了能够使用你的密钥文件。

实际上,TrueCrypt卷应该保持您的数据私有,因此将卷安装为世界可读(TrueCrypt的默认行为)并不是最佳选择。如果您正在使用FAT格式的卷,那么您真的应该调整挂载选项,就像Dan Carley建议的那样。

虽然TrueCrypt for OS X尚未正确支持挂载选项(即使您使用命令行界面和手册页中的挂载选项启动TC - 已经尝试过),但OS X确实支持基于的安装选项默认值卷名。

您需要知道您的用户ID(如果您是计算机的第一个/唯一用户,通常为501)。你可以用“id -u”来获得它。

让我们说你的卷名是“PRIVATE”(卷名是大写字母),你的uid是501,你所要做的就是将这一行添加到/ etc / fstab:

LABEL=PRIVATE none msdos -u=501,-m=700

您需要是root用户才能创建/编辑此文件(默认OSX安装中不存在):

sudo vim /etc/fstab

下次装入卷时,它将拥有权限700和所有者ID 501。

这也适用于USB驱动器(通常也用FAT格式化)。

作者:,user9437

相关问答

添加新评论