logwatchに、大量の不審なアクセスがある。
不審といっても、logが書かれるだけでとくになんの被害もないのだが、ウザいのでなんとかしたい。
アクセス元のIPアドレスはまちまちだ。
どうやってこんなに多様なIPアドレスからアクセスできるのかが不思議なのだが、
アドレスでブロックすることは実質的に不可能だ。
たとえば、国とかプロバイダとかでガバっとブロックしてしまおうかとも思うが、
それはやりたくない。
基本的に私はインターネットにサーバを公開する以上、
アクセス方法を問わずにブロックするという中国のGFW的な態度はとりたくない。
この不審なアクセスは、サーバに存在しないファイルへアクセスしている。
それはあきらかに故意になされている。
しかし頻度はそれほど高くない。
そして、アクセス内容を特定できるある文字列を含んでいる。
最初はその文字列を含むアクセスをiptablesでブロックしようと思ったが、
うまくいかない。これは確認中である。
そのうち、そもそもWEBサーバ自体になにか脆弱性があるのではないかと思い、
診断ツールで調べてみた。
niktoとかいうものだ。
特に致命的な脆弱性はなかったが、バージョンが古いと言われた。
2.2.15 である。
yumでupdateすると最新と言われる。
最新にするにはrepositoryを変更する必要がある。
centosのデフォルトレポジトリで最新なら別にいいかとも思うが、
このさい最新にしてみる。
更新後ちょっとゴタゴタしたが、無事に2.2.27になった。
ゴタゴタしたというのは設定ファイルが初期状態になったとか
proxy moduleが読めないとか
サービスが停止できないとかである。
設定ファイルはれいのrpmsaveだかなんかを戻し、
moduleは不要なものを読まないようにし、
停止できないのはkillで殺したが死なないのでサーバごとリブートした。