即将将服务器移至新数据中心中的新硬件,这当然意味着新的IP。
将SSH密钥从原始服务器移至新服务器的正确过程(如果有的话)是什么,以便连接的客户端不会收到任何警告或必须再次接受任何东西?
考虑到IP在变化,是否有可能?
我必须移动哪些文件?我假设所有的ssh_host_ *文件。
从RHEL 5迁移到Ubuntu 10.04。
即将将服务器移至新数据中心中的新硬件,这当然意味着新的IP。
将SSH密钥从原始服务器移至新服务器的正确过程(如果有的话)是什么,以便连接的客户端不会收到任何警告或必须再次接受任何东西?
考虑到IP在变化,是否有可能?
我必须移动哪些文件?我假设所有的ssh_host_ *文件。
从RHEL 5迁移到Ubuntu 10.04。
Answers:
您可以轻松地将密钥从当前服务器移至新服务器。您只需要确保他们进入相同的位置并拥有相同的权限即可。
不过,理想情况下,出于安全考虑,您应该趁机创建新密钥并更新客户端密钥。
1)如果sshd配置文件存储在/ etc / ssh /下,则需要复制所有这些文件。您将在此处找到sshd配置以及主机密钥对。
确保您也正确复制了权限!sshd只会忽略没有得到适当保护的密钥。(同样好,因为不受保护的私钥是一个非常糟糕的主意。)
2)如果您已经添加了受信任的远程主机的公钥,并且不再需要密码即可登录,则还必须复制该信息,以使自动登录现在可以再次工作。此信息通常存储在/home/-account-/.ssh/中(在authorized_keys下)。同样,不要忘记这里的权限。
关于IP地址更改,假设远程客户端实际上看到IP更改(您没有任何反向代理或任何东西),那么否,它们将要求用户再次接受证书。(由于在远程客户端的known_hosts文件中,服务器的IP和服务器的证书存储在一起),更糟的是,如果将该IP地址分配给另一台SSH服务器,它们甚至可能被警告中间人攻击。
因此,只需在新服务器上使用相同的(外部)IP地址就可以了。
您没有提到您的操作系统。我可以肯定地说,RHEL主机的服务器密钥存储在/ etc / ssh中。只需完整复制该目录即可。然后,您需要弹回sshd /重新启动该框。
我相信,只要您通过相同的DNS名称进行连接,就不会收到警告。即使有了新的IP。
克里斯托弗·卡雷尔(Christopher Karel)