仕事のためにSSH公開キーを配布しても安全ですか?


60

現在、メンテナンスとアップグレードのために定期的にサーバーにアクセスする必要がある多くの組織でリモートで作業しています。RSA公開SSHキーを.ssh/authorized_keysファイルに追加して、パスワードを検索することなく、はるかに高速でログインできるようにすることは安全ですか?私は公開鍵から秘密鍵を生成することは不可能であるという仮定の下で運営していますが、私は自分の仮定に正しいのですか?

さらに一歩進めて、RSA公開キーの内容をインターネットに投稿することでセキュリティ上のリスクはありますか?私の秘密鍵が取得された場合、私は多くの問題に直面していることを知っていますが、それ以外に、実際に起こりうるセキュリティ上の脅威はありますか?


回答:


77

はい、公開鍵から秘密鍵を回復することはできません。可能であれば、RSAは根本的に破られ、これは重大なニュースになります(RSAを破ると、多くのインターネット通信セキュリティが破られるだけでなく、あらゆる種類の銀行詐欺が可能になります)。

実際、パスワードの代わりに公開鍵でログインすると、セキュリティが向上する傾向があります。パスワードの強度が十分でない場合、十分な帯域幅を持つ攻撃者によってブルートフォースされる可能性があります。攻撃者がプライベートキーファイルのコピーを持っていない場合、RSAキーは事実上ブルートフォースできません(1024ビットキーは、大文字と小文字が区別されるランダムな文字と数字で構成される160文字のパスワードに相当します) 。肩越しに監視している人は、パスワードとキーパスフレーズを見ることができるかもしれませんが、キーがあれば、キーを取得する必要があります。

秘密鍵はパスワードよりも常に安全であるとは限りません。攻撃者がプライベートキーファイルのコピーを取得した場合(ラップトップまたはバックアップメディアを盗むなど)、パスフレーズをブルートフォースしようとする可能性があります。レート(オンラインで行う必要があるパスワード推測とは異なります)。パスフレーズが十分で、すぐに盗難に気付いた場合でも、キーを無効にする時間があります。

公開鍵は、プライバシー侵害の要素をもたらします:AとBにログインするために同じ公開鍵を使用したことを誰かが知っている場合、彼らはAとBにログインした同じ人を知っています。公開鍵を持っているだけで、秘密鍵も持っている疑いがあるため、匿名性を失います。しかし、特に~/.sshシステム管理者(ログインしたIPアドレスを知っている)のみが見ることができる場所にキーを保存しているだけの場合、それは通常マイナーです。

これらのセキュリティの考慮事項は別として、秘密鍵には多くの実用的な利点があります。パスワードをそれほど頻繁に入力する必要はありません。特に、ssh-agentなどでキーを入力するとプロンプトが表示されない自動スクリプトを実行できます。パスワードをそれほど頻繁に入力する必要はありません。そのため、より高いエントロピー(長く、入力するのが難しい)にすることができます。パスワードをそれほど頻繁に入力する必要はありません。そのため、人間の観察者やカメラにパスワードが盗まれる危険性が低くなります。


@NaftuliTzviKay実際に、ここで見落とされがちなものがあります。公開キーを使用するには、シェルを使用するシステムが秘密キーにアクセスできる必要があります。それはいいです。その秘密鍵がそのシステムに保存されている場合、脆弱であり、リモートシステムが脆弱になります。これには、暗号化されたホームフォルダーとキーのパスワードという2つのことが役立ちます。したがって、PKIによって提供されるセキュリティを完全に向上させるには、効率がいくらか失われます。あなたまたはあなたの組織は、どこで線を引くかを決定するためにリスク分析を行う必要があります。
-Xalorous

16

ジルの答えは一般に良いですが、

...特に、キーを〜/ .sshに保存するだけで、システム管理者(ログインしたIPアドレスも知っている)のみが見ることができる場合。

sshキーは~/.ssh、自分のアカウントで実行されているソフトウェアで読み取ることもできます。おそらくあなたが実行するソフトウェアのほとんどです。そのため、そのソフトウェアとそれを書いた人を信頼する必要があります。


2
このため、暗号化されたSSHキーを常に使用する必要があります
ItalyPaleAle
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.