Calvert's murmur

在 Capistrano 自動化部署時使用 Ed25519 金鑰

2016-10-16

約 651 字 / 需 3 分鐘閱讀

原文:steigrCapistrano with ED25519 keys

我最近將我的 Capistrano 自動化部署切換到了 Ed25519 金鑰。在正常運作之前我發現到一些奇怪的錯誤,部署使用者/代理程式無法登入到主機。在檢查 authorized_keys 檔案權限、本機 SSH 代理程式後,我開始用 Google 搜尋這個問題。結果是,net-ssh 版本小於 4 不支援 Ed25519 金鑰。

在 Gemfile 加入以下幾行,安裝所需的版本和 ruby gems 以啟用 Ed25519 金鑰支援:

gem 'bcrypt_pbkdf', group: :development
gem 'rbnacl-libsodium', group: :development
gem 'rbnacl', group: :development
gem 'net-ssh', '~> 4.0.0.beta', group: :development

確認 ruby 開發標頭檔,安裝到 rbnaclrbnacl-libsodium 的 C 編譯器和相依開發標頭檔皆有原生擴充功能。

現在,deploy-agent@server's password: 訊息應該消失了。