luc*_*scn 8 ssh ubuntu ecryptfs
我无法对我的服务器进行 ssh 公钥登录,我认为这个问题与我的家被加密有关。我在 Ubuntu 安装设置下选择了“加密我的主文件夹”选项。权限/home/MY-USER为 700。
我试过另一个工作站,一切正常。如果有人帮助我在不删除加密的情况下解决这个问题,我会很高兴。
Jen*_*man 12
如果您的主目录已加密,则 ssh 守护程序无法进入其中以检查您的私钥是否与您的公钥匹配。毕竟你的 .ssh 文件夹是加密的。
解决此问题的方法可能是将您的 .ssh 文件夹与您的authorized_keys 以明文形式保存在您未加密的主目录中。但是,如果您的加密技术使用您的密码作为密钥来解密所有内容,您仍然需要输入密码才能解密所有内容。
所以真正的无密码登录在这里是行不通的。(除非您想将密码以明文形式存储在某处以自动提供给解密过程,但这比根本不加密更不安全。)
您使用什么技术来加密您的主目录?
更新:ubuntu 使用 ecryptfs 在登录时挂载加密分区(因此当您提供密码时)要使 ssh 再次找到您的 .ssh 文件夹,您可以执行以下操作:
# copy your .ssh folder
mkdir /tmp/mine
chmod 700 /tmp/mine
mkdir /tmp/mine/.ssh
chmod 700 /tmp/mine/.ssh
cp ~/.ssh/authorized_keys /tmp/mine/.ssh/
cd /tmp/mine
# unmount your encrypted home drive
/sbin/umount.ecryptfs_private
# copy your ssh folder to the place ssh will actually look for
cp -r .ssh ~
# be sure to remove it again from /tmp
rm /tmp/mine/ -rf
Run Code Online (Sandbox Code Playgroud)
您现在应该可以再次登录,但您的主文件夹不会自动解密。要以未加密方式安装它,您必须在每次登录时输入:
/sbin/mount.ecryptfs_private
Run Code Online (Sandbox Code Playgroud)
这将再次要求您输入登录密码。
可以在此处找到有关此的更多信息:https : //bugs.launchpad.net/ubuntu/+source/openssh/+bug/362427
小智 10
在 ssh_config 文件中,您可以更改查找您的私钥的位置。您可能会执行一些操作,例如创建一个新文件夹/etc/ssh/keys/并将您的id_rsa私钥文件放入其中,然后更改IdentityFile选项ssh_config以查看新位置。在这样做时,您需要采取某些措施来保护您的私钥。
这是假设您是计算机的唯一用户。如果没有,你可以像文件夹/etc/ssh/keys/john/和/etc/ssh/keys/dogbert/,然后在IdentityFile选项放/etc/ssh/keys/%u/id_rsa
| 归档时间: |
|
| 查看次数: |
4449 次 |
| 最近记录: |