В течение многих лет я успешно развертывал свое приложение Rails 3.2.13 с помощью Capistrano. Но только сегодня я столкнулся с ужасным ArgumentError: Could not parse PKey: no start line
при подключении к серверу.
Из других постов я понял, что на самом деле это проблема с драгоценным камнем net-ssh
, который Capistrano использует для установления соединения. По-видимому, более старые версии net-ssh
несовместимы с файлами ключей, созданными более поздними версиями OpenSSH. (См. здесь и здесь например.)
Этот диагноз подтверждается (а) тем фактом, что я все еще могу подключиться к своему серверу по SSH из командной строки, и (б) следующим небольшим сеансом irb
:
irb(main):006:0> require 'net/ssh'
=> true
irb(main):007:0> Net::SSH::KeyFactory.load_private_key('~/.ssh/id_rsa')
ArgumentError: Could not parse PKey: no start line
Думаю, я недавно обновил свой файл закрытого ключа, когда сменил пароль, и теперь он несовместим с моей версией net-ssh
(v2.7.0).
Я не могу обновить net-ssh
, так как застрял на Ruby 1.9.3.
Есть ли способ вернуться к старой/совместимой версии файла закрытого ключа? Или какое-то другое решение, возможно?