2009-04-10 1 views
8

特定のホストに接続するときに〜/ .sshにid_dsaが格納されていないことをどのように確信できますか?sshに別のid_dsaを使用させる方法

明らかな質問はなぜですか。答えは、この鍵はより敏感で、パスワード保護される必要があり、もう一方は自動化に使用されるということです。

これはプログラミング上の問題ではありませんが、これにはプログラミングソリューションが必要であることを知っても驚くことはありません。 sshのmanページから

+0

これは私がこれと主張する唯一の理由は、多くのSCMツールが動作する方法の一環としてsshを使用しており、SCMツールは確かにプログラミング関連であるという点です。 –

答えて

6

は、のようなものを設定します名。

+0

素晴らしい。正確に私が探していたもので、見つけられなかったもの。 sshの2番目のコピーを作り、ヘキサエディタを使ってそれを修正することにどれくらい近づいたのか信じられません。 – Joshua

2

:私は~/.ssh/iddsa_auxIdentityFileセットを持って一つのホストを持っていますが、パラメータは任意のパスを受け入れるべき

Host somehost 
    IdentityFile /path/to/extra_secret_key 

:あなたの.ssh/config

-i identity_file 
     Selects a file from which the identity (private key) for RSA or 
     DSA authentication is read. The default is ~/.ssh/identity for 
     protocol version 1, and ~/.ssh/id_rsa and ~/.ssh/id_dsa for pro- 
     tocol version 2. Identity files may also be specified on a per- 
     host basis in the configuration file. It is possible to have 
     multiple -i options (and multiple identities specified in config- 
     uration files). 
+0

それを手に入れてください。私はマニュアルページを読んでそれを逃した。 – Joshua

12

あなたは本当に簡単に、奇妙なことに、私はちょうど友人と30分前にこれを議論するために使用することができます便利なトリック。

の〜/ .ssh/configに

 
IdentityFile ~/.ssh/ident/%[email protected]%h 
IdentityFile ~/.ssh/id_rsa 
IdentityFile ~/.ssh/id_dsa 

オプションは上から下へを介して実行されているので、これは、フォールバックのパターンを使用することが本当に簡単になります。

次に「ボブ@ someHost」のための特定のキーを指定するためにあなただけのファイルを作成する必要が

 
~/.ssh/ident/[email protected] 

そして、そのホストにログインするときには、その最初の試みます。

ファイルが見つからない、またはキーが却下された場合、それはあなたが新しいを追加する必要はありませんが、この場合には、

 
~/.ssh/id_rsa 

この技術の利点を次のものをしようとしますあなたが別のホストを追加するたびに、あなたがする必要があるのは、適切な場所にキーファイルを作成することだけです。残りは自動的に残ります。

関連する問題