2017-06-01 103 views
1

上的權限被拒絕(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

回答

0

快到了,但缺少的東西。對於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