小编Zhi*_*ang的帖子

Fedora 30 上使用 OpenSSH 8.0 的 SSH 连接问题(使用 ssh-dss),仍然要求输入公钥设置的密码

我已经在网上做了一些研究,最好的解决方案似乎是使用更好的算法来生成新的密钥对。但现在我仍然需要使用 ssh-dss 密钥对进行内部自动化。

(我知道从openssh 7.0开始,ssh-dss默认是禁用的,我们需要显式添加PubkeyAcceptedKeyTypes +ssh-dss到ssh配置中才能重新启用它。)

环境:

OpenSSH_8.0p1, OpenSSL 1.1.1c FIPS  28 May 2019

Linux hostname 5.1.19-300.fc30.x86_64 #1 SMP Mon Jul 22 16:32:45 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止所做的事情的清单:

  • 创建一个有密码的用户(有些帖子说可能需要密码)
  • 创建.ssh文件夹,在 中设置公钥.ssh/authorized_keys,确保它们具有 700、600 权限和正确的所有者而不是 root。
  • 检查/etc/ssh/sshd_config,确保我们有PubkeyAuthentication yes(通常是默认值)
  • 显式启用ssh-dss
    • 在服务器PubkeyAcceptedKeyTypes +ssh-dss上添加/etc/ssh/sshd_config
    • PubkeyAcceptedKeyTypes +ssh-dss在服务器端~/.ssh/config和客户端都添加
  • 重新启动 sshd 服务以选择新的更改

但是,我仍然被要求输入密码。

  • 检查一下/var/log/secure,我看到:

userauth_pubkey: key type ssh-dss not in PubkeyAcceptedKeyTypes

  • 查看ssh -Q key
ssh-ed25519 …
Run Code Online (Sandbox Code Playgroud)

linux security fedora ssh openssh

2
推荐指数
1
解决办法
6363
查看次数

标签 统计

fedora ×1

linux ×1

openssh ×1

security ×1

ssh ×1