opensslを更新することで仕込んだ爆弾
最近は Qiita の方に投稿が移ってる僕です。
ちょっと前からopensslがらみの話題が出ていますね。
HeartbleedBugとかCCS injectionとか。
で、うちのサーバもopenssl更新しておかないとなーと思って更新しました。
AWSを使っていて、クラ -> ELB(https) ELB -> EC2(http)という構成にしているので、apacheの再起動はしなくていいかーと放置してたんです。
更新作業した当初は特に何も問題なかったんですが、翌週月曜日に事件が・・・。
apache が 落 ち て た
なんでだーと思ってエラーログ見てみたら、以下のようなエラーが
mod_sslが読めない!?
[notice] SIGHUP received. Attempting to restart
httpd: Syntax error on line 221 of /etc/httpd/conf/httpd.conf: Syntax error on line 12 of /etc/httpd/conf.d/ssl.conf: Cannot load /etc/httpd/modules/mod_ssl.so into server: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /usr/lib64/libssl.so.10)
事件の引き金を引いたのはcrondで動いてるlogrotatedでした。
こいつがログローテの後にapacheをreloadかけていて、それが日曜の深夜でした。
でもって、mod_ssl使ってないはずなのにおかしいなーと思って見てみたら、
デフォルト設定だからmod_ssl読み込んでたわ!
なんでもデフォルトのままはいけないなってことと、
作業後に動いたから安心ってわけにはいかないって教訓でした。