最近、デスクトップを Ubuntu のデフォルト (Unity) デスクトップから Kubuntu デスクトップに変更しました。理解できないのは、これが SSH キーファイル構成でエラーを引き起こす理由です。
FE では、「ホスト」コンピューターに「ユーザー」ユーザーがいて、私のキーの 1 つ (PK はローカルでは ~/.shh にあります) が承認キーに追加されています。私がやりたいことは次のとおりです。
ssh user@host
これは Unity では正常に機能しました (Unity に戻しても引き続き機能します) が、Kubuntu デスクトップにログインすると、パスワードの入力を求められます。
これは両方のデスクトップで正常に動作します:
ssh user@host -i ~/.ssh/key
つまり、ssh プログラムがキーファイルを見つけられないのだと思いますが、デスクトップが重要なのはなぜでしょうか。また、これを修正するにはどうすればよいでしょうか。
ローカルの .ssh ディレクトリ (ls -la) からの関連部分:
drwx------ 2 szaboadam szaboadam 4096 okt 7 16:32 .
-rw------- 1 szaboadam szaboadam 1675 okt 7 16:32 key
-rw-r--r-- 1 szaboadam szaboadam 415 okt 7 16:32 key.pub
そして、サーバーの .ssh ディレクトリから:
drwx------ 2 git git 4096 Oct 7 16:33 .
-rwx------ 1 git git 566 Oct 7 16:33 authorized_keys
私はUbuntu 14.04を使用しています。ご協力ありがとうございます!
答え1
~/.ssh/id_*
通常、キーは上書きされない限りから読み取られるため、このコマンドが Unity で機能するのは奇妙です。key
とをそれぞれとkey.pub
に名前変更できます。ここで、 は、キーのタイプ (公開キー ファイルから取得可能) に応じて、、、または になります。id_*
id_*.pub
*
dsa
rsa
ecdsa
ed25519
あるいは、その中~/.ssh/config
で作成しますIdentityFile ~/.ssh/key
。
編集:~/.ssh/config
ホストごとにキーを指定するためにも使用できます。
Host host1
IdentityFile ~/.ssh/key1
Host host2
IdentityFile ~/.ssh/key2