xshell连接vm中虚拟机的时候,报错服务器发送了一个意外的数据包,如下图:
困扰了好几天了,一直连不上,当然现在也没连上。不过我意外地解决了虚拟机其他的问题,比如标题This private key will be ignored.这个是我按照网上大神的办法,一次一次的解决过程中,通过命令sudo systemctl status ssh引出来的错误。
看下图:
在众多大神给出的办法中,引出了上图所出现的error,所以又开始解决这个问题。刚开始也是在搜,有很多办法,不过都不管用,我来记录一下我的这个error是咋解决的吧。
1.首先看红色的第五行,提示Permissions 0644 for '/etc/ssh/ssh_host_ed25519_key' are too open.这句话的意思是让我们修改/etc/ssh/ssh_host_ed25519_key的权限,首先修改这个问题:
sudo chmod 600 /etc/ssh/ssh_host_ed25519_key
service ssh start(重启ssh)
sudo systemctl status ssh如下图,Permissions 0644 for '/etc/ssh/ssh_host_ed25519_key' are too open.已经没有了。
2.解决第一个error,This private key will be ignored.
vim /etc/ssh/sshd_config
进入后直接在键盘上敲/MaxAuthTries找到后按回车,i进入编辑模式将MaxAuthTries的值改大
修改后按esc键,输入:wq保存退出。
sudo systemctl status ssh如下图,This private key will be ignored.没有了。
3.剩下这些error纯属是我自己乱投医的时候改出来的,因为有些大神说KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group14-sha1把这些复制到vim /etc/ssh/sshd_config的最后一行就能解决我遇到的问题,所以直接恢复原样就行。
vim /etc/ssh/sshd_config
进入后把之前复制的 KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group14-sha1 删掉,保存退出就可以了。
sudo systemctl status ssh如下图: