![SSH 登录错误-权限被拒绝(公钥,密码)](https://linux22.com/image/781710/SSH%20%E7%99%BB%E5%BD%95%E9%94%99%E8%AF%AF-%E6%9D%83%E9%99%90%E8%A2%AB%E6%8B%92%E7%BB%9D%EF%BC%88%E5%85%AC%E9%92%A5%EF%BC%8C%E5%AF%86%E7%A0%81%EF%BC%89.png)
我刚刚配置了一台 Debian 服务器并在其上安装了 aapanel。我还将默认端口从 22 更改为 50001。
现在我尝试登录ssh -p 50001[电子邮件保护]并出现此错误
权限被拒绝(公钥,密码)
这是一些调试信息
OpenSSH_8.1p1, LibreSSL 2.7.3
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 47: Applying options for *
debug1: Connecting to 95.xxx.xxx.xxx [95.xxx.xxx.xxx] port 50001.
debug1: Connection established.
debug1: identity file /Users/ritaromano/.ssh/id_rsa type -1
debug1: identity file /Users/ritaromano/.ssh/id_rsa-cert type -1
debug1: identity file /Users/ritaromano/.ssh/id_dsa type -1
debug1: identity file /Users/ritaromano/.ssh/id_dsa-cert type -1
debug1: identity file /Users/ritaromano/.ssh/id_ecdsa type -1
debug1: identity file /Users/ritaromano/.ssh/id_ecdsa-cert type -1
debug1: identity file /Users/ritaromano/.ssh/id_ed25519 type -1
debug1: identity file /Users/ritaromano/.ssh/id_ed25519-cert type -1
debug1: identity file /Users/ritaromano/.ssh/id_xmss type -1
debug1: identity file /Users/ritaromano/.ssh/id_xmss-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_8.1
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.9p1 Debian-10+deb10u2
debug1: match: OpenSSH_7.9p1 Debian-10+deb10u2 pat OpenSSH* compat 0x04000000
debug1: Authenticating to 95.xxx.xxx.xxx:50001 as 'root'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
debug1: kex: server->client cipher: [email protected] MAC: <implicit> compression: none
debug1: kex: client->server cipher: [email protected] MAC: <implicit> compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:mvVcRh/4Nh7J6yw0fpMFm8Las+26KMPc8liDsxeVn8Y
debug1: Host '[95.xxx.xxx.xxx]:50001' is known and matches the ECDSA host key.
debug1: Found key in /Users/ritaromano/.ssh/known_hosts:1
debug1: rekey out after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey in after 134217728 blocks
debug1: Will attempt key: /Users/ritaromano/.ssh/id_rsa
debug1: Will attempt key: /Users/ritaromano/.ssh/id_dsa
debug1: Will attempt key: /Users/ritaromano/.ssh/id_ecdsa
debug1: Will attempt key: /Users/ritaromano/.ssh/id_ed25519
debug1: Will attempt key: /Users/ritaromano/.ssh/id_xmss
debug1: SSH2_MSG_EXT_INFO received
debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,ssh-rsa,rsa-sha2-256,rsa-sha2-512,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521>
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /Users/ritaromano/.ssh/id_rsa
debug1: Trying private key: /Users/ritaromano/.ssh/id_dsa
debug1: Trying private key: /Users/ritaromano/.ssh/id_ecdsa
debug1: Trying private key: /Users/ritaromano/.ssh/id_ed25519
debug1: Trying private key: /Users/ritaromano/.ssh/id_xmss
debug1: Next authentication method: password
我该如何修复?
我已经去过/etc/ssh/sshd_config,已启用密码验证并设置为是的,已启用质询响应认证并设置为不。
然后重新启动 ssh
sudo launchctl stop com.openssh.sshd
sudo launchctl start com.openssh.sshd
我在 os bigsur
答案1
在客户端生成密钥对:
ssh-keygen -t rsa
(您可以提示密钥的密码或将其留空)
复制本地文件
〜/.ssh/id_rsa.pub
到远程服务器文件夹
~/./(或简称为 root 用户的 ~,[注意:/root/ 文件夹])
在以 root 身份登录的远程服务器上:
猫〜/ id_rsa.pub >>〜/ .ssh / authorized_keys
(我认为您无法通过 ssh 访问,因此您需要任何方法来执行此操作,例如 vnc 或救援模式和 chroot,或者您可以通过提供商的 Web 仪表板将密钥文件内容添加到根 authorized_keys 文件中,通过 Web 表单添加公钥文件内容以使用您的密钥访问)
然后以 root 身份从本地 ssh 登录
ssh -p 50001[电子邮件保护]
如果它不起作用,请在此处发布来自远程服务器的 /etc/ssh/sshd_config 文件内容,并详细介绍您的登录试验过程和其他可能的相关信息,或者完全删除 openssh-server 并重新安装
注意:有时在控制台中复制粘贴密码会将垃圾刷新到缓冲区,因此请验证密码是否按正确的键输入