The easiest way is if you have a secure way to connect and verify the hostkey of the remote host by using this guide.


Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending key in /home/user/.ssh/known_hosts:39
RSA host key for has changed and you have requested strict checking.
Host key verification failed.

Here is the simple fix for it:

ssh-keygen -R

/root/.ssh/known_hosts updated.
Original contents retained as /root/.ssh/known_hosts.old

Another solution to keep secure

Use ssh pub key authencation based on our guide here.

Public key authentication is a highly secure method used in SSH communication. When used correctly, even with a man-in-the-middle (MITM) present, it should still provide robust security. However, there are caveats.

The essence of public key authentication is in the pair of keys: the private key, which you keep secret, and the public key, which you share. When a client (user) connects to a server, the server encrypts a random message using the user's public key. The user must then decrypt this message using their private key and send it back to the server. If the server can verify the decrypted message, it authenticates the user.

Here's why it's secure against MITM attacks:

  1. Private keys stay private: The user's private key, needed to decrypt messages, is never shared or transmitted. Even if a MITM intercepts the communication, they cannot get the private key.

  2. Public keys are...public: A MITM can see your public key, but it's designed to be shared. They can't derive your private key from it or use it to authenticate as you.


Security Considerations

non-matching hostkey can, on one hand, signal a substantial security risk like a man-in-the-middle attack. On the other hand, it might simply indicate that a new server is now using that IP address or a reinstall has taken place, leading to a perfectly legitimate change in the hostkey. The key here is to understand and verify the situation before assuming.

The Danger: Security Risks Associated with Non-Matching Hostkeys

When a device connects to a server via Secure Shell (SSH), it identifies the server using a cryptographic entity known as the hostkey. This key is stored in the device's list of known hosts (located in .ssh/known_hosts), and it's used for subsequent connections to the same server.

The error means that the key provided by the server is different from the one stored on the connecting device. This discrepancy can raise alarms since it often implies that you may not be connecting to the server you believe you are, or you are speaking to a malicious intermediary.

The most dreaded risk associated with a non-matching hostkey is the possibility of a man-in-the-middle (MITM) attack. In this scenario, a malevolent entity intercepts the communication between the client and server, posing as the server to the client and vice versa. The goal is often to gather sensitive data or introduce malicious code.

Non-matching hostkeys can also indicate a server spoofing attack where an attacker sets up a fake server to trick users into providing sensitive information, again pointing to a significant cybersecurity threat.

The Innocence: IP Reuse and Server Reinstallation

Despite the apparent dangers, a non-matching hostkey isn't always indicative of malicious activity. Often, it could be due to an innocent change in the server's infrastructure, like a new server using the IP address or the reinstallation of an existing server.

Dynamic IP addresses, where the IP address changes from time to time, are quite common in many network environments. If a new server comes online and happens to receive an IP address previously associated with a different server, you would see a non-matching hostkey when trying to connect.

Another benign possibility is when the server has been reinstalled or its operating system has been upgraded. In such cases, a new hostkey is generated, which would not match the previous one stored on client devices. Again, this situation represents a legitimate and non-malicious reason for a non-matching hostkey.


identification, eavesdropping, rsa, fingerprint, administrator, user, ssh, known_hosts, offending, requested, strict, verification, keygen, updated, contents, retained,

Latest Articles

  • How high can a Xeon CPU get?
  • bash fix PATH environment variable "command not found" solution
  • Ubuntu Linux Mint Debian Redhat Youtube Cannot Play HD or 4K videos, dropped frames or high CPU usage with Nvidia or AMD Driver
  • hostapd example configuration for high speed AC on 5GHz using WPA2
  • hostapd how to enable and use WPS to connect wireless devices like printers
  • Dell Server Workstation iDRAC Dead after Firmware Update Solution R720, R320, R730
  • Cloned VM/Server/Computer in Linux won't boot and goes to initramfs busybox Solution
  • How To Add Windows 7 8 10 11 to GRUB Boot List Dual Booting
  • How to configure OpenDKIM on Linux with Postfix and setup bind zonefile
  • Debian Ubuntu 10/11/12 Linux how to get tftpd-hpa server setup tutorial
  • efibootmgr: option requires an argument -- 'd' efibootmgr version 15 grub-install.real: error: efibootmgr failed to register the boot entry: Operation not permitted.
  • Apache Error Won't start SSL Cert Issue Solution Unable to configure verify locations for client authentication SSL Library Error: 151441510 error:0906D066:PEM routines:PEM_read_bio:bad end line SSL Library Error: 185090057 error:0B084009:x509 certif
  • Linux Debian Mint Ubuntu Bridge br0 gets random IP
  • redis requirements
  • How to kill a docker swarm
  • docker swarm silly issues
  • isc-dhcp-server dhcpd how to get longer lease
  • nvidia cannot resume from sleep Comm: nvidia-sleep.sh Tainted: Linux Ubuntu Mint Debian
  • zfs and LUKS how to recover in Linux
  • [error] (28)No space left on device: Cannot create SSLMutex Apache Solution Linux CentOS Ubuntu Debian Mint