我正在尝试设置基于密钥的 ssh 访问 Fedora 25 机器。我在许多 Ubuntu 服务器上都这样做过,没有任何问题。我得到Permission denied (gssapi-keyex,gssapi-with-mic,password).
以下是我的设置过程:
- (服务器)创建 /home/[用户]/.ssh
- (本地)将 key.pub 复制到远程 /home/[user]/.ssh/authorized_keys
- (服务器) chmod 700 /home/[用户]/.ssh
- (服务器)chmod 600 /home/[用户]/.ssh/authorized_keys
- (服务器)chown -R [用户]:[用户] /home/[用户]/.ssh/
我以详细模式运行了 sshd。但是,我无法解释输出。我认为这是相关的部分:
debug1: SELinux support enabled [preauth] debug1: ssh_selinux_change_context: setting context from 'unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023' to 'unconfined_u:unconfined_r:sshd_net_t:s0-s0:c0.c1023' [preauth] debug3: ssh_selinux_change_context: setcon unconfined_u:unconfined_r:sshd_net_t:s0-s0:c0.c1023 from unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 failed with Invalid argument [preauth]
是不是 SELinux 出了问题?我还应该检查其他地方?
编辑
以下是 ssh -vvv 的结果要点链接: https://gist.github.com/RogerCreasy/527d7520ce356074f4737ced51fb886d
以下是 sshd_config 要点的链接: https://gist.github.com/RogerCreasy/1105333c869a08193754410679e81335
答案1
附加日志中未使用公钥认证。
客户端配置中不能禁用公钥认证或者修改认证方法的优先级以致publickey
不使用该认证?
答案2
显示什么/var/log/messages
?当您从客户端运行时ssh -vvv <ip-address>
如何使用这些命令:创建密钥。
ssh-keygen -t rsa
将密钥复制到服务器
ssh-copy-id user@onthmachineyouwanttoconnect