ssh localhost免密码后依然需要输入密码问题的解决

本文详细介绍了如何通过生成密钥并使用ssh-copy-id命令来实现SSH localhost的免密码登录,并针对过程中可能出现的问题提供了具体的解决方案,包括调整.ssh目录及其子文件权限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

按理说ssh localhost是非常简单的一个操作。

ssh localhost步骤

生成秘钥

使用下面的命令即可生成秘钥

ssh-keygen -t rsa

免密码登录

使用下面的命令即可免密码登录localhost

ssh-copy-id localhost

但是到了这里执行ssh localhost的时候依然提示我输入密码。我仔细分析了原因,一般来讲失败的原因有两个。

失败原因之一:.ssh及其下属子文件的权限问题

首选.ssh目录权限是700, 两个dsa 和 rsa的 私钥权限是600,其余文件权限是644.

下面列出.ssh目录及子文件的权限表:

drwx------ 2 root root 4096  128 23:03 ./
drwxr-xr-x 9 root root 4096  128 23:03 ../
-rw------- 1 root root  394  128 23:03 authorized_keys
-rw------- 1 root root 1679  128 23:03 id_rsa
-rw-r--r-- 1 root root  394  128 23:03 id_rsa.pub
-rw-r--r-- 1 root root 1776  128 23:03 known_hosts

失败原因之二:.ssh父目录的权限问题

我的.ssh文件夹绝对路径是/root/.ssh,所以/root目录的权限应该是755。这次我的问题就出现在这里。

需要提醒一点,上面的目录权限一定要一一确认,不能嫌麻烦设成777

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值