FreeBSD 5.3R で ports から OPENSSL_OVERWRITE_BASE=yes でインストールできない。 †# make OPENSSL_OVERWRITE_BASE=yes install 以下のエラーメッセージが出て、ベースシステムに上書きできない。 # this ports does not support the dynamic root # please undefine OPENSSL_OVERWRITE_BASE # and use WITH_OPENSSL_PORT=yes instead. ベースシステムと ports でインストールするものとを分離して、 ports でベースシステムを直接上書きしなくなったというのがミソ。 (考えてみれば、上書きは確かに危険。) /etc/make.conf に WITH_OPENSSL_BASE=yes と書くと、ベースシステムが有効になり、 WITH_OPENSSL_PORT=yes と書くと ports でインストールした OpenSSL が有効になるという仕掛け。 FreeBSD 4.x への OpenSSL のインストール †トラブル回避のため、FreeBSD 5.x 同様カーネルごとコンパイルする。 openssl-overwrite-base はもう使わない。 (なんか、もはやつじつまが合わないらしい… 毎回 OpenSSL が未インストールのように言われてしまう。) よって、以下は、Obsolete FreeBSD に標準添付されているが、セキュリティホールが発見されてたびたびバージョンアップしている。そのため、別個にインストールした方が更新しやすい。 make.conf に以下の設定を追加する。 NO_OPENSSL=yes package で openssl をインストールする。 ports からのインストール †設定を忘れないように make.conf に以下の行を追加しておく。 .if ${.CURDIR}=="/usr/ports/security/openssl"
OPENSSL_OVERWRITE_BASE=yes
.endif
# cd /usr/ports/security/openssl # make install 以前の OpenSSL がインストールされている場合は注意。 単純に pkg_delete してしまうと、libssl.so.3, libcrypto.so.3 が消されてしまい、これを利用しているインストール済みパッケージ情報が見えなくなってしまう。 このとき、以下のようなエラーが出る。 # pkg_info /usr/libexec/ld-elf.so.1: Shared object "libssl.so.3" not found make install 時に問題になるかどうかは未確認。 (問題になるなら、一旦 libssl.so.3, libcrypto.so.3 をどこかに退避する必要がある。) |