Jvr*_*vrq 2 linux ssh ssh-keys
我尝试将 ssh 配置为使用公钥身份验证
/etc/ssh/sshd_config 有这个参数。
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication yes
Run Code Online (Sandbox Code Playgroud)
但我仍然被提示输入密码。如果我使用
PasswordAuthentication no
Run Code Online (Sandbox Code Playgroud)
我无法登录
有什么建议吗?
它有效,但仅适用于 root 用户。
我的问题是,我有这个参数
PermitRootLogin 号
如果我使用,我可以使用 root 用户的密钥登录
PermitRootLogin 是的。
系统中只有一个/root/.ssh目录,这个目录下有一个authorized_keys文件
如果在这个系统中没有每个用户的 home/$USER/.ssh 目录和authorized_keys 文件,我如何将它添加到其他用户?
有没有办法为每个用户配置?我需要为每个用户使用不同的 authorized_keys 文件。
是否可以为不同的主机、域或 ip 进行配置?类似于 httpd.conf
密钥身份验证总是在密码身份验证之前尝试,因此如果系统提示您输入密码,则密钥身份验证失败。最常见的原因是客户端和服务器端文件的所有权或权限不正确。
在客户端和服务器上,该~/.ssh目录必须归您所有并且只有您可以访问:
chown -R $USER ~/.ssh
chmod u=rwX,g=,o= ~/.ssh
Run Code Online (Sandbox Code Playgroud)
在客户端上,私钥必须为您所有且仅供您访问:
chmod u=rwX,g=,o= ~/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)
在服务器上,授权密钥文件必须为您所有且仅供您访问:
chmod u=rwX,g=,o= ~/.ssh/authorized_keys
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
303 次 |
| 最近记录: |