2013-10-18 68 views
0

我正在使用Opscode廚師進行基礎結構管理和代碼部署。但是我面臨一個問題,每當我從配方中運行bundle安裝時,它都會要求提供RSA密鑰指紋並期待輸入。但配方無法繼續進一步。在捆綁軟件安裝或軟件包更新期間,我需要如何刪除此RSA指紋。如何使用recipe/cookbook將其移除以在rails應用程序上部署ruby。運行套件更新時避免使用RSA密鑰指紋

+0

它爲什麼要求指紋?我一直使用'bundle install'並從未遇到過它。也許你的'Gemfile'特有的東西(比如一個替代的寶石來源)? – cassianoleal

+0

是它的另一個寶石來源,它爲github拉我使用bitbucket,我已經使用ssh wrapper的位桶不爲github所以它要求RSA指紋 –

+0

你有沒有試過在'〜/ .ssh/config'創建一個條目?爲'github.com'使用'StrickHostKeyChecking No'? – cassianoleal

回答

1

創建這些文件(其中<bundle_user>是將運行bundle命令或引用它的屬性的用戶):

### recipes/ssh_config.rb 
directory "#{<bundle_user>}/.ssh" do 
    mode 00755 
    owner <bundle_user> 
end 

cookbook_file "#{bundle_user}/.ssh/config" do 
    source "ssh_config" 
    owner <bundle_user> 
    mode 00644 
end 


### files/default/ssh_config 
Host github.com 
    StrictHostKeyChecking no 

然後,deploy資源運行之前,include_recipe "your_cookbook::ssh_config"。這將禁用github.com的SSH指紋驗證。

請注意,這具有安全隱患(值得注意的是,它更容易遭受MITM攻擊)。