助け合いフォーラム

LinuC

LinuC Lv1-102(Ver10.0)
問題ID : 15869
問題を開く
リモートホストからサーバにSSH接続できるように、サーバ上で以下のコマンドを使用して公開鍵認証用の鍵ペアを作成した。SSH接続するホスト(クライアント)に安全に持ち運ぶべきファイルはどれか。 $ ssh-keygen -t ecdsa

この問題はプレミアムコンテンツです。

上に戻る

不明点

公開日 2022/09/27

安全に持ち運ぶ鍵とあり、答えは秘密鍵との事ですが、そもそも秘密鍵を持ち出す必要が分かりません。ユーザ認証もホスト認証も自分の公開鍵を相手に送るだけではないのでしょうか。

2022/09/28 12:46

設問では

サーバ上で以下のコマンドを使用して公開鍵認証用の鍵ペアを作成した。

とあるので、「サーバに公開鍵と秘密鍵のペアがある状態」であり、「クライアント(サーバに接続する側)には対応する公開鍵も秘密鍵も "無い"」んですよね。そうすると、公開鍵認証したくてもクライアントの情報をサーバ側は知りませんし、クライアントはサーバに接続するための秘密鍵を持っていないので認証してもらえないんですよね。
なので「サーバで作ったペアのうち、秘密鍵をクライアントに持っていく」必要があるんですね。


コメント

s satuki1127

2022/09/28 12:59

arashi1997様 ご回答ありがとうございます。 ホスト認証の際は サーバからホストへサーバで作成した公開鍵を登録 ユーザ認証の際は ホストからサーバへホストで作成した公開鍵を登録 SSHでの接続では上の2つの処理のみ必要だと認識しているのですが、どこかで秘密鍵を交換する必要があるのでしょうか。 自分の認識では秘密鍵は送られてきた暗号化通信を複合するためだけのものです。

a arashi1977

2022/09/28 19:51

今回は > ユーザ認証の際は > ホストからサーバへホストで作成した公開鍵を登録 の逆向きだってだけです。 「ホストで作成した」が「サーバで作成した」になっているので、公開鍵は既にサーバ側にあり、ペアとなる秘密鍵を「サーバ」から「ホスト(=クライアント)」に持ってこないと公開鍵認証ができないという話です。

s satuki1127

2022/09/29 13:19

arashi1977様 ご回答ありがとうございます。 おかげでユーザ認証を逆向きのパターンでも可能だと気づけました。 ホスト側から公開鍵をサーバに送らなければならないと思っておりました。 納得して次に進めます。 ありがとうございました。

この返信に対して
コメントを記入できます

この投稿に対して返信しませんか?