我在使用 ssh 登录公司服务器时遇到了问题。
我有我的本地~/.ssh/config;
Host target
HostName xx.yy.zzz.aaa
User abcd
IdentityFile ~/.ssh/id_ed25519
IdentitiesOnly=yes
我有其他主机和这些工作,所以我不认为这里存在错误......
在远程服务器上,我通过 root 帐户添加了密钥/home/abcd/.ssh/authorized_keys
,并且权限看起来~/.ssh/
不错
drwx------ 2 abcd abcd 4096 Jul 31 21:14 .
drwxr-xr-x 3 abcd abcd 4096 Jul 31 21:07 ..
-rw------- 1 abcd abcd 104 Jul 31 21:14 authorized_keys
我还将自己添加到ssh
组中,并将/etc/ssh/sshd_config
我的用户名和 ssh 组添加到允许的用户/组。我还重新加载了 sshdsystemctl reload sshd
AllowUsers ab ba abc abcd
AllowGroups admin ssh root
这些群体不应该有太大的区别,因为AllowUsers
它是优先选择的,但它仍然
ssh-copy-id
无法工作,因为密码登录被禁用。
但我仍然无法访问permission denied (pubkey)
,所以我必须使用不同的临时可访问帐户我遗漏了什么?谢谢
答案1
现在它起作用了。所有步骤都在问题中。
SSH 服务器只需要一些时间来处理更改。
首先是配置:
HostName 77.111.222.333
User abcd
IdentityFile ~/.ssh/id_ed25519
IdentitiesOnly=yes
在你的服务器上添加你的公钥~/.ssh/authorized_keys
,并确保在连接服务器时使用它
确保服务器和本地的权限都非常严格
drwx------ 2 abcd abcd 4096 Jul 31 21:14 .
-rw------- 1 abcd abcd 104 Jul 31 21:14 authorized_keys
确保/etc/ssh/sshd_config
您的用户名在AllowUsers
列表中,如果不存在,则您的组在列表中,AllowGroups
并验证您是运行该组的成员groups $USER
如果您检查了这一点,请尝试重新加载 SSH 服务systemctl reload sshd
并等待其正常工作。
要了解可能出现的问题,请使用-vvv
SSH 的详细设置。但这对我没有太大帮助 :)