原文:steigr — Capistrano 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 開發標頭檔,安裝到 rbnacl
及 rbnacl-libsodium
的 C 編譯器和相依開發標頭檔皆有原生擴充功能。
現在,deploy-agent@server's password:
訊息應該消失了。