kade

技術系の記事を書いていきます。

OpenSSL: 1.0.1gに対応させる

先日結構大きな脆弱性問題が出ているOpenSSLを1.0.1gに上げてみました。あまり詳しくないのでこれで正しいか不安ではありますが、一応成功したと思います。

yum upgradeで簡単に出来るかと思ったら、1.0.1gはまだlistに入っていませんでしたので、makeで上書きしていきます。

※追記:http://cloud-news.sakura.ad.jp/2014/04/10/20140407-openssl-security-advisory/
さくらサーバーはyumの最新版で問題無さそうでした。「yum update openssl」で十分かもです。。。

ちなみに脆弱性があるものかどうかはこちらに書いてあったので必要ないサーバーも多いかもしれません。

http://hyper-text.org/archives/2014/04/openssl_heartbleed_bug_qa.shtml

1: 設定を確認する

$ whereis openssl

これで「/usr/bin/openssl /usr/lib64/openssl」とかなってたら3の項目で「--prefix=/usr」というオプションを使います。

$ openssl version -a

これで「OPENSSLDIR: "/etc/pki/tls"」となっていたら3の項目で「--openssldir=/etc/pki/tls」というオプションを使います。

2: OpenSSLをDLして展開する

$ cd /tmp/
$ wget https://www.openssl.org/source/openssl-1.0.1g.tar.gz
$ tar xzvf openssl-1.0.1g.tar.gz

3: 1で確認したOpenSSLの位置に上書きする(念のため元のやつorgとかで残しておいて下さい)

$ cd openssl-1.0.1g
$ ./config --prefix=/usr --openssldir=/etc/pki/tls
$ make
$ sudo make install

4: サーバーを再起動する

$ sudo service httpd restart

5: OpenSSLのバージョンを確認する

$ openssl version

1.0.1gと出れば成功。

6: 脆弱性をチェックする。

http://uzulla.hateblo.jp/entry/2014/04/09/163138#fn4

こちらのサイトでheartbleedによる脆弱性があるかどうかチェック出来るツールを紹介されていたので使ってみました。

$ cd /tmp/
$ wget http://gobuild.io/github.com/titanous/heartbleeder/master/linux/amd64 -O output.zip
$ unzip output.zip
$ ./heartbleed IPアドレス

SECUREと出れば大丈夫でVALNERABLEと出たら駄目らしいです。

※追記:https://filippo.io/Heartbleed/ こちらで簡単にチェック出来ました。

一応これで1.0.1g対応はOKだと思います。いつから漏れているかが微妙で、鍵も交換した方がいいらしいです。

http://centossrv.com/apache-ssl.shtml

こちらのサイトの手順で新たに作成しました。

OpenSSL―暗号・PKI・SSL/TLSライブラリの詳細―

OpenSSL―暗号・PKI・SSL/TLSライブラリの詳細―