サーバーに対してsshを実行するユーザーに基づいて、特定のIDファイルを指定したいと思います。
たとえば、user1としてホスト1からhost 2にuser1としてsshする場合
[user1@Host1 ~]$ ssh user1@Host2
特定のIDファイルを使用したい。ただし、user1としてsshをHost1からHost2にuser2としてsshすると、別のIDファイルを使用したい
[user1@Host1 ~]$ ssh user2@Host2
これで、コマンドでIDファイルを指定してこれを行うことができます。
[user1@Host1 ~]$ ssh -i ~/.ssh/id_user1 user1@Host2
[user1@Host1 ~]$ ssh -i ~/.ssh/id_user2 user2@Host2
しかし、私は〜/ .ssh/configファイルでそれをしたいです。以下を試しましたがうまくいかないようです
Host user2@*
IdentityFile ~/.ssh/id_user2
Host user1@*
IdentityFile ~/.ssh/id_user1
どんな助けもありがたいです。これを別の場所で構成する必要がある場合も、問題ありません。コマンドラインでの指定は避けたいだけです。それが私の問題のクールな解決策になるので、これを理解したいです!
Match
ディレクティブでこれを行うことができるはずです。
Host host2
HostName Host2.some.dom.ain
Match user user1
IdentityFile ~/.ssh/id_user1
Match user user2
Identityfile ~/.ssh/id_user2