У меня были проблемы с развертыванием моего CI-сервера в последнее время из-за того, что клиент (CI) отклонил ключ хоста удаленного компьютера (несмотря на то, что он присутствовал в known_hosts
). До сегодняшнего дня я был в тупике, когда понял, что SSH сохраняет ключи хоста в формате, с которым плагин развертывания не совместим. Для справки, совместимый формат (все еще присутствует на моем персональном компьютере) выглядит следующим образом:
11.22.33.44 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCkVf7rhfC7nLxbeIQRj2bWitUC+XLSAeQ0ap8r8rKObDXYfPdB97NZth9JCEt3OrBXuBeg4PaAEuPu2QF7WXoT60hgAP6etr0W4LqcH59yd/X0ogFP7Y7hIf6dz1txDKaW92wgUi5XShwH6vukf0gLvW6/ak1LTBuoy72gaoUvxZge4KZivz9XqvSQHNOG9KYNfh8U6cRM8YTQo5in7YD5d6REV/FUmXpvBzCa9kbVRSlQFGYEc1HidTnPnJDteas3A9y3na385O7WN64aAkg7TO8IFXKdDHSwji9ZyrCVPA5GEuyLKhDFanV8iJ7CNflHMP8TwG5FOT2bSkV0lPyl
Хотя формат SSH в настоящее время сохраняется при принятии новых ключей хоста, он выглядит примерно так:
11.22.33.44 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEJJEs165NgdEcD94Xg3ySFA/qgkfytxNCX1X3pB2SPgU/mHLGXCXM8+VqMBXocM8OMOq2L0fDGr5mI+nGqjhNU=
(Примечание: хотя я немного выдумал открытые ключи, они по-прежнему совсем не похожи друг на друга в своей первоначальной форме.)
Только первый формат совместим с плагином развертывания, а второй безоговорочно игнорируется. Кто-нибудь может объяснить это несоответствие?