Edited at

さくらのクラウドにおいて共通のSSHホスト鍵が使用されている問題

More than 3 years have passed since last update.

公式アナウンスはこちら 【重要】SSHホスト鍵の再作成のお願い。 注意:~公式アナウンスの手順ではFreeBSDでは鍵が再作成されない~(訂正された)。他のOSは未確認。

さくらのクラウドにおいて、さくらインターネットが提供する「パブリックアーカイブ」(OSのインストールイメージ)にSSHホスト鍵が含まれている物があり、このようなアーカイブを使用してサーバをセットアップすると、同じアーカイブを使用したサーバと共通のホスト鍵が使われることになる。このため、多数のサーバで共通のホスト鍵が使われている可能性がある。利用者の人は速やかにホスト鍵を再生成すべき。


  • /etc/ssh/ssh_*_key

  • /etc/ssh/ssh_*_key.pub

を削除してOSのサービス起動スクリプトを用いてsshサービスを再起動するか、OSを再起動すれば再作成される。

さくらのクラウドに限らず、VPS、クラウド、レンタルサーバなど、自分でインストールメディアを使わずにセットアップされた環境の場合は確認することをお勧めする。


さくらインターネットより問題を認識し対応中と連絡があったが、対応されるとしてもパブリックアーカイブの修正のみとなるはずで、パブリックアーカイブの修正完了以前に作成されたサーバについては引き続きユーザー側で対応が必要である。


FreeBSD10.3のサーバを作った場合の例

(Webコンソールより「シンプルモード」で、ホスト名、パスワードを入力しOSを選択して作成)

サーバ1

% sha1 /etc/ssh/*_key

SHA1 (/etc/ssh/ssh_host_dsa_key) = a0bbf55dd953de4d0c935a973bbfd78286785df1
SHA1 (/etc/ssh/ssh_host_ecdsa_key) = f785d399453fbd2bec004e15c7695e9b58b39cd4
SHA1 (/etc/ssh/ssh_host_ed25519_key) = 662e48acb60cb047b593ec97ae6d8ca1f7393587
SHA1 (/etc/ssh/ssh_host_key) = cf2dd889e97c4ce037991d6069f1e1642a4ab205
SHA1 (/etc/ssh/ssh_host_rsa_key) = 935560693fac01bf4d8a819570c4a26d7f91b26d

サーバ2

% sha1 /etc/ssh/*_key

SHA1 (/etc/ssh/ssh_host_dsa_key) = a0bbf55dd953de4d0c935a973bbfd78286785df1
SHA1 (/etc/ssh/ssh_host_ecdsa_key) = f785d399453fbd2bec004e15c7695e9b58b39cd4
SHA1 (/etc/ssh/ssh_host_ed25519_key) = 662e48acb60cb047b593ec97ae6d8ca1f7393587
SHA1 (/etc/ssh/ssh_host_key) = cf2dd889e97c4ce037991d6069f1e1642a4ab205
SHA1 (/etc/ssh/ssh_host_rsa_key) = 935560693fac01bf4d8a819570c4a26d7f91b26d

一緒!

% ls -l /etc/ssh

-rw------- 1 root wheel 672 4月 4 16:19 ssh_host_dsa_key
-rw-r--r-- 1 root wheel 604 4月 4 16:19 ssh_host_dsa_key.pub
-rw------- 1 root wheel 227 4月 4 16:19 ssh_host_ecdsa_key
-rw-r--r-- 1 root wheel 176 4月 4 16:19 ssh_host_ecdsa_key.pub
-rw------- 1 root wheel 411 4月 4 16:19 ssh_host_ed25519_key
-rw-r--r-- 1 root wheel 96 4月 4 16:19 ssh_host_ed25519_key.pub
-rw------- 1 root wheel 979 4月 4 16:19 ssh_host_key
-rw-r--r-- 1 root wheel 644 4月 4 16:19 ssh_host_key.pub
-rw------- 1 root wheel 1679 4月 4 16:19 ssh_host_rsa_key
-rw-r--r-- 1 root wheel 396 4月 4 16:19 ssh_host_rsa_key.pub

4/26に作ったサーバなのに、鍵のタイムスタンプが4/4になっている。つまり、イメージにホスト鍵が含まれていてそれが複製されている。

Ubuntu 14.04LTSの例

サーバ1

$ sha1sum /etc/ssh/*_key

57f66740c02e124f2a849d9b42a4252518fc875e /etc/ssh/ssh_host_dsa_key
0d8c3fcec2a2da441fd828cccd6a3880959eeea3 /etc/ssh/ssh_host_ecdsa_key
a306a973b631188c6132b77f22c3027e2f76cca6 /etc/ssh/ssh_host_ed25519_key
578a6bfb0f0b54c74bd8edde583fc950b1fb71a7 /etc/ssh/ssh_host_rsa_key

サーバ2

57f66740c02e124f2a849d9b42a4252518fc875e  /etc/ssh/ssh_host_dsa_key

0d8c3fcec2a2da441fd828cccd6a3880959eeea3 /etc/ssh/ssh_host_ecdsa_key
a306a973b631188c6132b77f22c3027e2f76cca6 /etc/ssh/ssh_host_ed25519_key
578a6bfb0f0b54c74bd8edde583fc950b1fb71a7 /etc/ssh/ssh_host_rsa_key

やっぱり一緒!

$ ll /etc/ssh/*_key

-rw------- 1 root root 668 Mar 9 13:25 /etc/ssh/ssh_host_dsa_key
-rw------- 1 root root 227 Mar 9 13:25 /etc/ssh/ssh_host_ecdsa_key
-rw------- 1 root root 399 Mar 9 13:25 /etc/ssh/ssh_host_ed25519_key
-rw------- 1 root root 1679 Mar 9 13:25 /etc/ssh/ssh_host_rsa_key

タイムスタンプは3/9。