Rails Capistrano 3:AWS EC2

问题描述:

上的权限被拒绝(publickey)我试图通过bitbucket在Amazon ec2上部署我的rails(4.2)应用程序。我在服务器上添加了我的id_new_rsa.pub密钥authorized_keys。还在我的bitbucket帐户中添加了相同的SSH密钥。新增剂以及使用这些命令eval "$(ssh-agent -s)"ssh-add ~/.ssh/id_new_rsaRails Capistrano 3:AWS EC2

通过使用这种id_new_rsa.pub键相同的键,我可以同时访问服务器(根和部署),但是当我尝试部署我的应用程序,让下面的错误。

我花了3天找出解决方案,但没有运气。请帮忙。

enter image description here

deploy.rb

enter image description here

production.rb

enter image description here

快到了,但缺少的东西。对于auth方法,您使用publickey稍微不正确。只需将以下内容添加到您的:ssh_options中即可。

auth_methods: ["publickey"] 

这是从与EC2和Capistrano的工作例如:

set :ssh_options, { 
    forward_agent: true, 
    user: fetch(:user), 
    auth_methods: ["publickey"], 
    keys: ["/path/to/key.pem"] 
} 

制作肯定不给权限是0600,您的密钥文件。

+0

我试过这个,但没有运气。谢谢 – kpp

+1

你的服务器里有'USER'吗? – Evgeny

+0

是Evgeny。 “部署”用户在服务器中。我可以在服务器和本地机器上使用'ssh -T git @ bitbucket.org'进行登录。我试着在EC2-> Key Pairs上创建新的'.pem'文件并添加到ssh_option的配置文件中。但仍然无法与EC2和bitbucket存储库连接。 – kpp