web-dev-qa-db-ja.com

OS XにSSHで接続すると、キーチェーンがありません。ターミナルを使うときは

ステップ

  1. WindowsデスクトップでPuTTYを開きます。
  2. MacBookProにSSHで接続します。
  3. githubクローンにcd
  4. $ git Push

期待される

Everything up-to-date

実際

Enter passphrase for key '/Users/whit537/.ssh/github':

メモ

  • Githubキーはキーチェーンアクセスにリストされています。
  • キーチェーンアクセスでパスフレーズを表示できます。
  • このパスフレーズは、PuTTYのプロンプトで正常に使用できます。
  • MacBookのターミナルウィンドウで期待どおりの結果が得られます。
  • uname -a:ダーウィンchad.whitacre 10.7.0ダーウィンカーネルバージョン10.7.0:2011年1月29日土曜日15:17:16 PST;ルート:xnu-1504.9.37〜1/RELEASE_I386 i386

更新

2011-04-12:関連サイドバーの質問からsecurityツールを発見しました(投稿時に可能な回答のリストに気づかなかった) 。 security unlock-keychainを実行しようとしましたが、同じ結果が得られます。これを行うには何らかの方法があるはずのようです。実際、問題のキーは2つあります。これらは長いパスフレーズであり、短いパスワードではありません。日中は頻繁に必要になります。だから私はこれの底に到達するためのいくつかのインセンティブを持っています。

2011-04-13: これは有望に聞こえます 。 MacBookに/tmp/launch-*****/Listenersファイルがあります。次回PCを使用するときは、PuTTYセッションでSSH_AUTH_SOCKを設定してみます。それがうまくいけば、現在の起動セッションを自動的に検出するための.profileフックについて確認します。

12
whit537

次のように、ターミナルでキーチェーンのロックを解除できるはずです。

security unlock-keychain -p <YourPassword> ~/Library/Keychains/login.keychain

パスワードの入力を求められたくない場合は、パスワードをファイルに保存してから、次のようなコマンドを実行できます。

security unlock-keychain -p `cat ~/.file_with_your_password` ~/Library/Keychains/login.keychain

キーチェーンパスワードをファイルに保存すると、想像できるようにセキュリティ関連の欠点がいくつかあるため、これがオプションかどうかを自分で判断する必要があることに注意してください。

これがお役に立てば幸いです

18
Besi

キーチェーンはOSXのグラフィカルログインに関連付けられています。ローカルでコンピューターにログインすると、キーチェーンが開きます。内部でbashが実行されているターミナルは、キーチェーンを認識しています。

PuTTYを介してリモートでログインすると、キーチェーンが開かれず、PuTTYとbashはそれを認識しません。ローカルでもログインしている場合でも同様です。それらの間のリンクはただそこにありません。

申し訳ありませんが、PuTTYからログインすると、パスワードの入力が必要になります。

それは、OS Xキーチェーンシステムの内部を知っている誰かが、PuTTY接続セッション内にそのリンクを手動で配置する方法を思い付くことができない限りですが、私の考えでは、パスワードを一度入力するよりもおそらく手間がかかります一方。

3
Majenko

この回答 で説明しているように、実行する必要もあります

eval `ssh-agent -s`

キーチェーンのロックを解除することに加えて。

2
orkoden