treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

logwatch見慣れないエラー?

ちょっと前のことになりますが、Linux(Raspbian)搭載のRaspberry Piをサーバとして利用しているコンピュータで見慣れないメッセージが。
調べてみたのでご報告です。

logwatchで送られてきたメッセージ

ある日のlogwatchのメッセージ(一部編集)

--------------------- SSHD Begin ------------------------

Deprecated options in SSH config:
KeyRegenerationInterval - line xx
RSAAuthentication - line xx
RhostsRSAAuthentication - line xx
ServerKeyBits - line xx

Users logging in through sshd:
%USERNAME%:
192.168.xxx.xxx: 1 time

**Unmatched Entries**
reprocess config line xx: Deprecated option RhostsRSAAuthentication : 1 time(s) reprocess config line xx: Deprecated option RSAAuthentication : 1 time(s)
---------------------- SSHD End -------------------------

SSHがなにかWarningらしきメッセージを出しているようです。SSHはセキュリティの問題があればかなり深刻なので、注意して調べるようにします。
ただし、このRaspberry Piはイントラ上で利用しており、インターネット上からの直接アクセスは出来ない状態になっているため、セキュリティの問題だったとしても多少は余裕を持って取り組むことが出来る状況なのは救いです。

調べてみる

どうも「Stretchアップデートでは、opensshバージョンが7.3から7.4に変更され、それに伴って、SSHv1オプションは非推奨オプションとなった」と言うことらしい。
「Deprecated options in SSH config」=「SSH構成の非推奨オプション」

以下にだいたい答えが載っていました。

■Stretchでopensshを再起動する際の非推奨オプション
https://unix.stackexchange.com/questions/337774/deprecated-options-when-restarting-openssh-in-stretch

以下要約。
バージョンによってSSHのオプションが廃止されており、現在では非推奨オプションとなってしまっていることを示しているのがこの「Deprecated options in SSH config」以下の記載。
SSHv1の廃止に伴う構成オプションの廃止なので、SSHv1を利用していない限りは即刻脆弱性の穴となるワケではなさそう。

それでも不要なオプションを有効化しておくことで、今後問題が出る可能性もあるので、廃止オプションについてはsshd_configから削除しておくほうがよいといえる。
そのオプションが「KeyRegenerationInterval」と「ServerKeyBits」と「RSAAuthentication」と「RhostsRSAAuthentication」と「UsePrivilegeSeparation」(※実際の環境でlogwatchに表示されたのは「UsePrivilegeSeparation」以外の四つの構成オプションですが、調べたURLにはこれも記載があったので、一応記載)

これらを削除したのち、sshd(SSHデーモン)を再起動することで、対処が完了する。

SSHv1向けのオプション

問題になっているオプションはどうやらSSHv1で利用されていたオプションのよう。
つまり、SSHv1が有効化されていた時代からsshd_configをずっと引き継いで使ってきた(dist-upgradeしてきた)ことで、sshd_configがリフレッシュされるタイミングがなかった(それでもバイナリはdist-upgradeで置き換わっておりSSHv1の廃止だけはされた)ので、古い(現在では非推奨の)オプションがそのまま残存していた、ということのよう。

ん?でもRSAAuthenticationはSSHv1のRSAを利用するオプション?と、いうことは現在では使うことが危険になっている旧バージョンであるSSHv1を使ってしまうこのオプションは危険ってこと?

とりあえず、コメントアウト⇒SSHのリスタートでよさそう。