Linuxでの美人大会とは何ですか? SSH秘密鍵パスワードの保存

Linuxでの美人大会とは何ですか? SSH秘密鍵パスワードの保存

コンピュータが起動時に美人コンテストのようにSSHパスワードプロンプトを表示したいと思います。私の秘密鍵は3台のコンピュータの間にあるDropboxに保存されています。そのうちの1台は現在Ubuntuです。

2時間グーグルして他の人に聞いてみました。しかし、私は同じ秘密鍵を複数の場所で使用し、毎年更新します。私はDropboxだけでなく複数の場所にあるので、パスワードで保護する必要があります。

Seahorseを見つけましたが、それが私が望むように動作するかどうかはわかりませんが、OpenSSHにエクスポートされたPuTTyキーをインポートすると、新しいUbuntuインストールで分割エラーが発生します。

答え1

多くのLinuxディストリビューションはデフォルトでログインマネージャでssh-agentを起動します。したがって、実際にすべきことは、起動後にキーを追加することだけです。

したがって、ログインするとすぐにssh-addを実行するようにショートカットスクリプトなどを設定できます。これを行う方法は、使用しているデスクトップ環境によって異なります。

x11-ssh-askpassGUIにパスワードプロンプトを表示するなどのGUIツールをインストールできます。

あなたはできますPAMと共にパスワードの入力を求めるメッセージを表示するか、ログインパスワードを再利用してください。

海馬またはその他の暗号通貨財布(1)(2)一部のデスクトップ環境に組み込まれている場合でも機能します。なぜそれがあなたに衝突するのかわかりません。詳細を追加する必要があります。

答え2

確認する必要がある2つの点は次のとおりです。

  1. 最新のLinuxディストリビューション(ubuntuなど)を使用している場合は、すでにシステムでssh-agent互換キーマネージャが実行されている必要があります。シェル(X11の下)を開き、SSH_AUTH_SOCK環境変数の値を確認してください。それから/tmp/keyring-WEuO6X/sshあなたは走っています。GNOMEキーホルダー。それなら/tmp/ssh-XXXXXXXXXX/agent.<ppid>あなたは走っているのです。SSHエージェントなど。空の場合、キーマネージャは実行されていません。

  2. デフォルト以外のディレクトリ(つまり、以下ではない~/.ssh)にキーを保存したようです。したがって、キーキーパーはこれを見ることができません。 ssh-agentのマニュアルを確認し、~/.sshdirの下にキーをソフトリンクしてみてください。次のようになりますln -s $HOME/dropbox/.../mydsakey $HOME/.ssh/id_rsa(正確なファイル名はキーの種類によって異なります)。これはすべてのキーマネージャで機能しますが、使用するキーマネージャを決定した後にさらに確認できます。きれいマニュアルに解決策が記載されています。

とにかく、ほとんどのキーマネージャは、ログイン時にキーフレーズを要求せずにセッションで最初にキーを使用しようとしたときに尋ねます。

[ -- 追信 -- ]

キーマネージャが実行されていることを確認する最も簡単な方法は、キーを手動で追加してみることです。

ssh-add <key-file>

答え3

UbuntuとKubuntuの場合、私がssh-agent自分で書いたスクリプトを使用しました。

パテをインストールしました。

sudo apt-get install putty

ホームディレクトリのフォルダid_rsaに* .ppk(puttygen生成ファイル)を使用してファイルを作成または変換する必要があります。名前が重要です!.sshssh-keygenid_rsa

puttygen private.ppk -O private-openssh -o $HOME/.ssh/id_rsa

他の人がファイルをid_rsa読み書きできません。

chmod 600 $HOME/.ssh/id_rsa

私のホームディレクトリにファイルを作成しましたagent.shが、どこにでも配置できます。

. $HOME/.ssh/ssh-agent.env 2>/dev/null
if [ "`ssh-add -l | grep id_rsa`" = "" ]; then
  mkdir -p $HOME/.ssh/
  ssh-agent >$HOME/.ssh/ssh-agent.env
  . $HOME/.ssh/ssh-agent.env
  ssh-add
fi

次のコマンドを使用してputtyを実行できます。

. ./agent.sh; putty

または:

. ./agent.sh
putty

「.」(ドットまたはピリオド)も重要であり、スクリプトを実行するための環境変数をエクスポートします。最初はキーファイルのパスワードを要求し、次回はパスワードを要求せずにパテを実行します。

答え4

キーホルダーssh-agent(実際のラッパーです)似ていますが、すべてのプロセスで同じエージェントを実行させます。

キーチェーンは ssh-agent の管理者であり、通常 ~/.bash_profile で実行されます。これにより、シェルおよびクローン操作が単一のSSHエージェントプロセスを共有できます。デフォルトでは、キーチェーンで始まるssh-agentは長期間実行され、システムからログアウトした後も引き続き実行されます。この動作を変更するには、以下の --clear オプションと --timeout オプションを確認してください。

関連情報