アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在使用しているサーバにてApacheのバージョンが2.2.27で脆弱性があり、2.2.29にバージョンアップをしようとしているのですが、そのサーバにはOpenSSLも設定してあり、こちらはこの作業の前にopenssl0.9.8eの脆弱性対策としてopenssl0.9.8zcを配置し、モジュールをmakeまでしてある状態で、Apacheのバージョンアップの際にmake installを行い、Apacheにも適用させようとしているのですが、ビルドの前にspecファイルに「--with-ssl=/usr/local/ssl/bin」(←opensslモジュールが存在する場所) を追加したのですが、OpenSSLが実際に適用されていません。他に設定などが必要なのでしょうか。また確認の際に、logでバージョン確認をしたのですが、他に確認する方法はありますでしょうか。(openssl versionコマンドであると、表示だけ変わっている状態なので意味ないようです。)

A 回答 (1件)

下記のいずれかで対処可能と思われます。



(a) OpenSSL を make depend する前に、全ての Makefile の -lcrypto を
-lcrypto -Wl,-rpath -Wl,/usr/local/ssl/lib に置換する。
(b) (apacheのインストール先)/bin/envvarsファイルのLD_LIBRARY_PATHに
/usr/local/lib/sslを追加する。
(c) OpenSSLを -fPICオプション付きで、かつ静的ビルドする。
(d) /etc/ld.so.confに/usr/local/lib/sslを追加して ldconfig を実行する。

が、(a)は仕組みを知らないと難しいと思います。
また、(d)はシステム全体に影響を及ぼすのでおすすめしません。(※)
なので、(b)を検討されてみてはいかがでしょうか。envvarsにLD_LIBRARY_PATHを設定するパッチを用意してあげれば行けるはずです。
(c)はOpenSSLをsharedオプション付きでconfigし、インストールした後/usr/local/ssl/lib配下のlibcrypto.soとlibssl.soを別の名前に変えた状態でApacheをビルドするとできると思います。

※容易さ: d -> c -> b -> d、おすすめ度: a -> b -> c -> d
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!