Capistrano уничтожает авторизацию с открытым ключом ssh - PullRequest
3 голосов
/ 23 сентября 2011

Я совершенно вне себя от проблемы, с которой я столкнулся с двумя разными ssh-пользователями на двух разных серверах, на которых я развертывался с Capistrano.Я уверен, что я не единственный, кто сталкивался с этим:

  1. Я установил ssh-соединение из командной строки с аутентификацией без пароля, используя мой открытый ключ, который известен удаленномусервер.Это работает: я могу войти в удаленную систему.
  2. Я выполняю »cap deploy: setup«.Удивительно, но мне приходится вводить пароль пользователя ssh, и с этого момента мне приходится вводить пароль снова каждый раз, когда я вхожу на сервер через ssh в командной строке.Открытый ключ больше не принимается, о чем свидетельствует вывод команды ssh -v:

_

shell$ ssh -vp 5222 my_ssh_user@my-remote-host.de
OpenSSH_5.6p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /etc/ssh_config
debug1: Applying options for *
debug1: Connecting to my-remote-host.de [1.2.3.4] port 5222.
debug1: Connection established.
debug1: identity file /Users/martin/.ssh/id_rsa type 1
debug1: identity file /Users/martin/.ssh/id_rsa-cert type -1
debug1: identity file /Users/martin/.ssh/id_dsa type -1
debug1: identity file /Users/martin/.ssh/id_dsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.1p1 Debian-5ubuntu1
debug1: match: OpenSSH_5.1p1 Debian-5ubuntu1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.6
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host '[my-remote-host.de]:5222' is known and matches the RSA host key.
debug1: Found key in /Users/martin/.ssh/known_hosts:9
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/martin/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /Users/martin/.ssh/id_dsa
debug1: Next authentication method: password
my_ssh_user@my-remote-host.de's password: <here I enter my password>
debug1: Authentication succeeded (password).
Authenticated to my-remote-host.de ([1.2.3.4]:5222).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LANG = de_DE.UTF-8
Linux ve2003 2.6.18-238.5.1.el5.028stab085.5 #1 SMP Thu Apr 14 15:42:34 MSD 2011 x86_64

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/
Last login: Fri Sep 23 13:05:55 2011 from

Я использую Mac OS Lion локально и Ubuntu наотдаленная сторона.Мой Capistrano расширен многоступенчатым расширением.Я установил

set :ssh_options, {:forward_agent => true}

, и он работает для извлечения пароля из git-репозитория на удаленной стороне без пароля.

Как я могу помешать Capistrano взломать мои настройки SSH и сделать его общедоступнымснова ввести ключ?

Очень признателен за любую помощь!

РЕДАКТИРОВАТЬ: Проблема на стороне сервера: я только что обнаружил, что не могу использовать другие системы для входа без пароля в удаленную систему.Как я могу узнать, что не так с сервером?

...