Прегледах няколко документации за това как да се подготвя за използване на Capistrano и сред тях беше „удостоверяването и оторизацията“ от уеб сайта на Capistrano.
Всичко се развихри, когато изпълних тази команда
me@localhost $ ssh [email protected] 'hostname; uptime'
но.. когато попадна на тази команда
me@localhost $ ssh -A [email protected] 'git ls-remote [email protected]:team/application.git
Имам страх
Permission denied (publickey).
Реших да направя ssh към сървъра директно като потребител за внедряване и да опитам командата си от там, но след това бях помолен за моята парола:
me@localhost:~$ ssh [email protected]
... bunch of logon information ...
deployer@server:~$ git ls-remote [email protected]:team/application.git
Enter passphrase for key '/home/deployer/.ssh/id_rsa':
Въведох паролата и получих отговор от bitbucket. Сега не разбрах защо ме помолиха за моята парола, тъй като ssh-агентът трябва да е заредил самоличността ми и всичко трябва да е наред с deployer и bitbuckt. Реших да проверя дали ssh-agent е заредил самоличността ми чрез стартиране
ssh-add -l
но тогава получих
Could not open a connection to your authentication agent.
Какво? добре, тогава стартирах ssh-агента и се уверих, че самоличността ми е заредена, като направих това
deployer@server:~$ eval "$(ssh-agent)"
Agent pid 30113
deployer@server:~$ ssh-add -l
The agent has no identities.
deployer@server:~$ ssh-add
Enter passphrase for /home/deployer/.ssh/id_rsa:
Identity added: /home/deployer/.ssh/id_rsa (/home/deployer/.ssh/id_rsa)
deployer@server:~$ ssh-add -l
2048 6c:87:f9:e1:71:75:0d:1c:cf:8d:d8:a8:06:fc:70:e7 /home/deployer/.ssh/id_rsa (RSA)
и сега мога да правя отдалечения си списък от bitbucket добре, без да се налага да въвеждам паролата си
deployer@server:~$ git ls-remote [email protected]:team/application.git
f25db5c4691531c8ad27882c74d9668de66f795f HEAD
97a68f4f6cbffd0c320b37891ffdda57931146f4 refs/heads/deployer
f25db5c4691531c8ad27882c74d9668de66f795f refs/heads/master
deployer@server:~$
сега бях щастлив и излязох от сървъра и опитах отново от моята локална машина
deployer@server:~$ exit
logout
Connection to server.com closed.
me@localhost:~$ ssh [email protected] 'git ls-remote [email protected]:team/application.git'
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
??? Там е моят проблем... сега виждате ли къде греша?