heartbleed パッチ ( 1.0.1g ) を使用して、Web サーバーを最新の openssl に更新しようとしています。openssl.org から tarball を取得しました。いつものことを言った./configure; make; make install
。.so ファイルを作成するように言わなければconfig shared
なりませんでした (デフォルトでは .a のみを生成します)。新しい .so を指すように /usr/lib64 のリンクを更新しました -
現在、httpd は次のエラーで実行に失敗しています:
/usr/sbin/httpd: symbol lookup error: /usr/lib64/libssl.so.1: undefined symbol: EVP_idea_cbc
nm -g | grep idea
言います:U EVP_idea_cbc
...そのため、シンボルについて知っていますが、シンボルは未定義です。
Openssl のドキュメントには、特許 (明らかに 2012 年に失効した) のため、IDEA はデフォルトで無効になっていると書かれています。無効にする方法については詳しく説明していますが、有効にする方法については説明していません。さらに、彼らはそれがデフォルトで無効になっていると言います.
Apache httpd はシンボルを要求し、シンボルがないと起動しません。
「構成共有有効化アイデア」と言ってみましたが、構成スクリプトは満足していますが、ビルド後もシンボルは未定義です。ビルド出力をファイルにパイプしましたが、crypto/idea ファイルがコンパイルされています。
で始まるすべてのシンボルEVP_*
は未定義です...それらはまた未定義ですlibssl.a
...だから、間違ったIDEAツリーを吠えているのでしょうか?
EVP_*
だから私の質問は、これらのシンボルを有効にするにはどうすればよいですか?