短い答え

短い答え

GNU/Linux でのパスワードなし認証のための既存のメカニズムは、クライアントで ssh-keygen を作成し、クライアントの公開鍵をサーバーにコピーし、パスワードなしでクライアントからサーバーを認証できるようにするというものです。

私の質問は

クライアント側でキー ペアを作成するのではなく、サーバーの公開キーをクライアント側に配置すると、サーバー (クライアントからパスワードなしで接続する) でキー ペアを生成できますか?

それができるとしたら、その手順は何か、誰か説明してもらえますか?

答え1

短い答え

いいえ。

長い答え

公開されている情報 (公開キー) を使って、自分が何者であるかを証明することができます。さらに、サーバーのキーは使用できません。つまり、あなたはあなたであり、サーバーはサーバーなのです。

公開鍵は、安全に全世界に知ることができます。サーバーは、要求するすべての人に公開鍵を教えます。

より長い回答

しかし、あなたがしようとしていることを分解してみると、管理を容易にしようとしていることがわかります。では、どのような選択肢がありますか?

  • すべてのユーザーの公開鍵を取得してサーバーにコピーします。これらはすべて 1 つのアカウントに保存することも、複数のアカウントに保存することもできます。
  • すべてのユーザーに同じ秘密鍵を付与します (これは、あなたが考えていたものかもしれません)。この方法では、サーバーは 1 つの公開鍵を持ちます。ただし、ユーザーを区別する方法はありません。すべてのユーザーに対して鍵を取り消さずに、ユーザーが鍵を紛失した場合に鍵を取り消す方法はありません。
  • システム管理者にユーザーの公開キーと秘密キーを作成させます。その後、秘密キーを安全にユーザーに渡す必要があります (たとえば、ラップトップを IT サポート オフィスに持ち込み、キーをインストールします)。ユーザーがこのキーを他の目的に使用することも安全ではありません (関係のない事柄については IT サポートを信頼すべきではないため)。

関連情報