仕事用のSSH公開鍵を提供するのは安全ですか?

仕事用のSSH公開鍵を提供するのは安全ですか?

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

さらに一歩進み、私のRSA公開鍵の内容をインターネットに投稿するとセキュリティリスクはありますか?私の秘密鍵を調べると大きな困難を経験することがわかりますが、それ以外に実際のセキュリティ上の脅威があるかもしれませんか?

答え1

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

実際、ログイン時にパスワードの代わりに公開鍵を使用すると、セキュリティが向上することがよくあります。パスワードが十分に強力でない場合、十分な帯域幅を持つ攻撃者が無差別代入攻撃を受ける可能性があります。攻撃者が秘密鍵ファイルのコピーを持っていない場合、RSA鍵を無差別代入攻撃することは事実上不可能です(1024ビット鍵は、大文字と小文字を区別する任意の文字と数字で構成される160文字のパスワードと同じです)。あなたを探索する誰かがあなたのパスワードと鍵のパスワードを見ることができますが、鍵がある場合は、その人も鍵を取得する必要があります。

秘密鍵が必ずパスワードより安全であるとは限りません。攻撃者が秘密鍵ファイルのコピーを取得した場合(たとえば、ノートブックやバックアップメディアを盗むなど)、パスワードを無差別代入攻撃することができ、速度制限が不要なため、これを高速で実行できます。オンラインパスワードの推測は異なります)。パスワードが十分で、盗まれた事実をすぐに気付いた場合は、まだキーをキャンセルする時間があります。

公開鍵はプライバシーインプレッション要素を導入します。 AとBにログインするために同じ公開鍵を使用したことを誰かが知っていると、AとBにログインした人が同じであることがわかります。単に公開鍵を持っているということは、自分が秘密鍵も持っていると疑うという意味なので、ある程度匿名性を失うことになります。しかし、これは一般的にマイナーな問題です。特に、~/.sshログインしたIPアドレスを知っているシステム管理者だけが表示できる場所にキーを保存する場合にはさらにそうです。

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

答え2

ザイルズ回答除いては全体的に大丈夫です

...特に〜/ .sshにキーを保存した場合は、システム管理者(ログインしたIPアドレスも知っています)だけが表示されます。

入力したSSHキー~/.ssh自分のアカウントで実行されているすべてのソフトウェアでも読み取ることができます。これはおそらく最大実行しているソフトウェアのため、ソフトウェアとそれを作成した人を信頼する必要があります。

関連情報