OpenSSL
※SSL(Secure SocketLayer)機能を実現するライブラリです。
【ダウンロード】
※OpenSSL(openssl-0.9.7g.tar.gz)
http://www.openssl.org/
※〜engine〜の方でも、問題ありません。
【展開】
(以下の作業はrootで行ってください)
# cd /usr/src
# gzip -cd openssl-0.9.7g.tar.gz | tar xvf -
【コンパイル】
# cd openssl-0.9.7g
# ./Configure linux-elf shared --prefix=/usr --openssldir=/usr/bin
(↑Cは大文字!!)
# make clean
# make (←けっこう時間がかかります)
# make test
※ここでMakefileを修正します。
# vi Makefile
---------------------------------------------------------
・・・・・・
MANDIR=$(OPENSSLDIR)/man
・・・・・・
---------------------------------------------------------
これを下記のように変更します。
---------------------------------------------------------
・・・・・・
MANDIR=$(OPENSSLDIR)/openssl_man/man
・・・・・・
---------------------------------------------------------
ESCを押し、「:wq!」で保存終了します。
【インストール】
# make install
※「/usr/lib」内の「lib*so*」ライブラリ等の日付をチェックします。
インストールした時刻になっていればOKです。
# ls -lsa /usr/lib/libcrypt*so*
# ls -lsa /usr/lib/libssl*so*
# ls -lsa /usr/bin/openssl
※もし、うまくコピーされていなければ、手でコピーします。
--------------------------------------------------------
# cp -rf lib*so* /usr/lib/.
(心配な方は # cp -d lib*so* /usr/local/lib/. ) (←念のため[※注])
# /sbin/ldconfig
# cp -rf include/openssl/* /usr/include/openssl/.
(場合によっては「/usr/include」や「/usr/local/include」にも)
(「engine.h」がみつからないというエラーが出た場合は無視します)
※なぜか、openssl本体がインストールされないので、手でコピーします。
# cp apps/openssl /usr/bin/.
--------------------------------------------------------
[※注]
ライブラリファイルは、RPM系だと「/usr/lib」なのでしょうが、
ソースでインストールすると、「/usr/local/lib」になるものもあります。
インストール時にきちんと指定すれば、こんな混乱はないのでしょうが、
限られた時間で作業するので、とりあえず動けばよい、ということで
処理をすすめると、こうなってしまうことがあります。(経験談:笑)
この場合、時間をみて、「/usr/local/lib」のファイルはすべて「/usr/lib」に
リンクするようにしておくと、とりあえず解決します。
includeファイルに関しても同様です。わたしの環境では、標準で
「/usr/local/include」はありませんので、いつも「/usr/include」に
原本を置き、必要に応じてリンクファイルを「/usr/local/include」に
置くようにしています。
【バージョンの確認】
# openssl version -a
※変更を反映するために、一度 shutdown してください。
# shutdown -h now
※なお、OpenSSLをインストールした場合は、
OpenSSHを再度インストールしてください。