ssh-agent:キーリング全体の認証を転送しません


10

私は2つの秘密SSHキーを持っています:

  • 私の個人的なマシンにアクセスするための1つ、
  • 1つは、私の仕事でサーバーにアクセスするためのものです。

これら2つのキーをを使用してssh-agentに追加しssh-addます。

ここで、ssh -A root@jobsrv自分のジョブキー(接続に使用しているものjobsrv)に対してのみエージェント認証を転送したいと思います。

rootアクセス権を持つ誰もがjobsrv私のエージェントを使用して自分のマシンに対して自分自身を認証できるため、これが必要です。

この分離を達成する方法はありますか?


sshのmanページで-iオプションを確認しましたか?
人間、

1
@Stillakidはい、ssh -A -i myjobkey_rsa root@jobsrvそれでも、jobsrvマシンがローカルマシンエージェントにアクセスし、他の(
個人

ssh-keysignもチェックしましたか?
人間

回答:


2

複数のssh(1)キーをssh-agent(1)提供している場合でも特定のキーを強制的に使用するには、でIdentityFileand IdentitiesOnlyディレクティブを使用します~/.ssh/config。例:

Host example.com
    IdentityFile ~/.ssh/keys/special.pem
    IdentitiesOnly yes

詳細ssh_config(5)については、を参照してください。


これは機能しませんIdentitiesOnlyリモートサーバーに接続しようとしたときに適用されます。接続すると、-Aエージェント転送が有効になっている場合、キーリング全体が転送されます。
Totor 2013

キーリングは転送されません。で転送れるのは認証リクエストです。
バハマート2013

@bahamat確かに、私の間違い。それでも、このソリューションは機能しません。
トーター、

2

残念ながら、現時点ではこれを簡単に達成することは不可能だと思います。2つのエージェント(キーごとに1つ)を使用して、すべてのキーを保持するエージェントが存在しないようにすることもできます。しかし、これは作業がかなり面倒です。

これが、バグレポート(拡張)が公開された理由です。あり、このようなレポートすぎては。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.