Edited at

OpenSSL 対応などの際に古いライブラリを使用したままのサービスを見つける

More than 5 years have passed since last update.

OpenSSL の脆弱性対応の際に、古いライブラリを使用したままのサービスを見つけて再起動したいとします。

その際に便利なのが lsof コマンドです。

このコマンドを使って、削除済みのライブラリを未だに参照しているサービスを見つけ出したいと思います。

$ sudo lsof | grep ssl | grep DEL

例えば、私の手元の環境 (Amazon Linux) では、以下の出力結果となりました。

qmgr       1349   postfix  DEL       REG              202,1                 5192 /usr/lib64/libssl3.so

qmgr 1349 postfix DEL REG 202,1 4827 /usr/lib64/libssl.so.1.0.1e

Postfix がまだ古いライブラリを参照しているようなので、サービスを再起動します。

$ sudo service postfix restart

Shutting down postfix: [ OK ]
Starting postfix: [ OK ]

これで再度 lsof で確認しても、出力結果に出てこなくなりました!

✌ ('ω' ✌ )三 ✌ ('ω') ✌ 三( ✌ 'ω') ✌