我按照以下步骤进行 ssh 免密,但还是提示输入密码
服务器权限 drwx------. 2 test test 37 8 月 4 11:33 .ssh -rw-------. 1 test test 577 8 月 4 11:32 authorized_keys
这是怎么回事
1
lechain 2023-08-04 11:43:06 +08:00
ssh 登录的时候用-vvv 选项看一下 详细信息,看具体发生了什么
(盲猜一个大概率是你本地 ssh client 没有读取到你的 private key ,要么是路径不对,要么是权限不对,要么是本地客户端配置不对 |
2
dzdh 2023-08-04 11:47:24 +08:00
/usr/sbin/sshd -D -d -p 2222
本地连 ssh -vvv 看服务端和客户端都干了啥 |
3
CaptainD OP @lechain
@dzdh 这是 vvv 的详细信息,貌似是找不到 key ? [vvv-error01]( https://imgur.com/rRLv5JJ) [vvv-error02]( https://imgur.com/3kpqH3k) [vvv-error03]( https://imgur.com/BmvJOJS) |
4
mangoDB 2023-08-04 12:03:12 +08:00
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys |
6
busier 2023-08-04 13:55:41 +08:00
“key 名为 server-test”!
客户端默认 key 名为:“id_rsa” |
8
jasonyang9 2023-08-04 14:08:21 +08:00 via Android
不是应该用私钥去连接么
|
9
leo108 2023-08-04 14:10:59 +08:00
-i 参数应该跟的是私钥,你这最后一条命令用的是公钥
|
10
busier 2023-08-04 14:12:30 +08:00
赞同楼上!
ssh -i 应该导入 private key 你 ssh -i 指向了 ssh-copy-id 同样的 public key 显然这是错误的! |
11
CaptainD OP @jasonyang9
@leo108 @busier #10 这里应该是我写错了,实际上我连接是用的私钥 我知道是咋回事了,我在 Windows 上使用 ssh-copy-id 写入服务器的时候,这里好像有编码错误,导致我写入服务器 authorized_keys 的值和我本地密钥的值不一致,真坑呀,我手动复制粘贴是可以的 windows 应该默认是不支持 ssh-copy-id 的,我从网上找了个命令 copy 了一下,没想到有这个问题 |