web-dev-qa-db-ja.com

SSHを使用したIdentityFileの指定

リモートサーバーへのSSHクライアント接続を確立するためのより合理化された手段を作成しようとしています。公開鍵と秘密鍵のペアを作成し、ssh-copy-idを使用して公開鍵をリモートサーバーにインストールしました。

ただし、ssh -i ~/.ssh/mykey user@HostなどのIDファイルのパスを入力しない限り、パスワードの入力を求められていました。公開鍵認証でパスワードをバイパスするには、これを入力する必要がありますか?

これを回避するには、.bashrcを使用し、このパスを使用してエイリアスを作成しました。しかし、これはこれを行う方法ですか?それとも、通常のssh user@Hostを使用できるように、公開鍵を許可するサーバーの質問だけですか?

7
Troy

ssh -i ~/.ssh/mykey user@Hostでキーペア認証を正常に使用できる場合は、SSHクライアント構成でこれを簡単に自動化できます。

たとえば、これを追加する場合は、~/.ssh/configファイルを実行します。

Host hostname
  User username
  IdentityFile ~/.ssh/mykey

その後、単にssh hostnameを実行すると、ユーザー名とIDファイルの設定はconfigファイルによって処理され、ユーザーは言うようにレースに出かけます。

IdentityFileディレクティブ(ssh-iスイッチがオーバーライドする)には、~/.ssh/id_dsa~/.ssh/id_ecdsa~/.ssh/id_ed25519、および~/.ssh/id_rsa;を検索するデフォルト設定があります。秘密鍵の他のファイル名は、configファイルで指定するか、コマンドラインで-iを使用して指定する必要があります。

14
DopeGhoti