2016-09-02 9 views
-1

私はSFTPを使用しているアプリケーションでいくつかの問題をトラブルシューティングしています。途中で、私は構成ファイル(〜/ .ssh/config)を使って、別のSFTPサーバーに接続するためにopenSSHコマンドラインクライアントを使用しています。テストの間に、私は設定を変更しています、そして時々無効な設定を意図的にテストしようとします。SSHが有効な接続設定を覚えているように見えるのはなぜですか?

現在、設定ファイルを変更してIdentityFile行を削除しました。これがなければ、接続を試して作成するために使用するキーファイルを知るべきではないので、接続は失敗するはずです。しかし、私はそのホスト名にsshするたびに、パスワードプロンプトのようなものでなくても接続は成功します。

これは悪いです。私のサーバーはキーファイルの使用を必要としますが、私のアプリケーションはそれがなければ接続できないので、私はこれを知っています。それでも、私の現在の設定が無効であっても、SSHが古い、有効なサーバ設定を記憶しているのとほぼ同じです。

私はこれを修正するために何ができますか?私はSSHがこのような古い構成にぶら下がって欲しくない。

ありがとうございました。

+0

プロトコルバージョン1用~/.ssh/identity、および~/.ssh/id_dsaです。特定の 'IdentityFile'を指定しなければ、'〜/ .ssh'からすべての有効なキーを読み込み、パーミッションに基づいて「安全」とみなし、それぞれを順番に試します。その周りの唯一の方法は '〜/ .ssh'にキーを持たず、別の場所に鍵を格納し、次に設定ファイルやコマンドラインから' IdentityFile'を指定します。 – twalberg

答えて

1

あなたはsshのマニュアルページで説明したようsshは、デフォルトの場所(~/.ssh/id_{rsa,dsa,ecdsa})でキーを使用します、IdentityFileを指定しない場合:

IdentityFileに

ファイルを指定します。ユーザーのDSA、ECDSA、Ed25519またはRSA認証IDが読み取られます。デフォルトでは、どのように `ssh`作品だ。つまり、プロトコルバージョン2の ~/.ssh/id_ecdsa~/.ssh/id_ed25519~/.ssh/id_rsa [...]

関連する問題