- PR -

カテゴリが違うかもしれませんが

1
投稿者投稿内容
339
常連さん
会議室デビュー日: 2005/05/21
投稿数: 34
投稿日時: 2006-07-07 13:59
OS:Solaris10(SPARC) None機能を利用(完全ルートゾーン)

現象
apachectl startコマンドでは起動可能ですがapachectl startsslコマンドでは
以下のエラーが出力されてSSLモードで起動できません。

couldn't set locale correctly
Syntax error on line 253 of /usr/local/apache2/conf/httpd.conf:
Cannot load /usr/local/apache2/modules/mod_ssl.so into server: ld.so.1: httpd: fatal: relocation error: file /usr/local/apache2/modules/mod_ssl.so: symbol X509_STORE_CTX_set_depth: referenced symbol not found

私が行った確認作業として
/usr/local/apache2/modules配下にmod_ssl.soが存在していることを確認し
lddコマンドで確認もし以下のような結果です。
ldd mod_ssl.so
libc.so.1 => /usr/lib/libc.so.1
libm.so.2 => /usr/lib/libm.so.2
/platform/SUNW,Sun-Blade-1000/lib/libc_psr.so.1

原因などさっぱり分からない為、ご存知の方がいらっしゃいましたら
ご教授いただけませんでしょうか?
かつ
ベテラン
会議室デビュー日: 2006/04/04
投稿数: 56
投稿日時: 2006-07-07 14:10
>OS:Solaris10(SPARC) None機能を利用(完全ルートゾーン)
Zone機能?

つい先日、当方のSolaris10環境が動かなくなってしまったので、再現テストが出来なくて申し訳ないのですが、apache ってOS標準のを使っているのですか?それとも自前でコンパイル?
(/usr/local/apache2/ なので自前でコンパイルかな?)

mod_ssl.so では無く、httpd 本体の ldd はどうですか?
当方のSolaris8だとこんな感じです。

$ ldd /usr/local/apache2/bin/httpd
  libssl.so.0.9.7 => /usr/local/ssl/lib/libssl.so.0.9.7
  libcrypto.so.0.9.7 => /usr/local/ssl/lib/libcrypto.so.0.9.7
  libaprutil-0.so.0 => /usr/local/apache2/lib/libaprutil-0.so.0
  libexpat.so.0 => /usr/local/apache2/lib/libexpat.so.0
  libiconv.so.2 => /usr/local/lib/libiconv.so.2
  libapr-0.so.0 => /usr/local/apache2/lib/libapr-0.so.0
  libsendfile.so.1 => /usr/lib/libsendfile.so.1
  librt.so.1 => /usr/lib/librt.so.1
  libm.so.1 => /usr/lib/libm.so.1
  libsocket.so.1 => /usr/lib/libsocket.so.1
  libnsl.so.1 => /usr/lib/libnsl.so.1
  libresolv.so.2 => /usr/lib/libresolv.so.2
  libpthread.so.1 => /usr/lib/libpthread.so.1
  libdl.so.1 => /usr/lib/libdl.so.1
  libc.so.1 => /usr/lib/libc.so.1
  libgcc_s.so.1 => /usr/local/lib/libgcc_s.so.1
  libaio.so.1 => /usr/lib/libaio.so.1
  libmp.so.2 => /usr/lib/libmp.so.2
  libthread.so.1 => /usr/lib/libthread.so.1
  /usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1
339
常連さん
会議室デビュー日: 2005/05/21
投稿数: 34
投稿日時: 2006-07-07 15:44
ありがとうございます。
httpd本体にlddコマンド実行しました。以下のとおりです。

ldd /usr/local/apache2/bin/httpd
libssl.so.0.9.8 => /usr/local/ssl/lib/libssl.so.0.9.8
libcrypto.so.0.9.8 => /usr/local/ssl/lib/libcrypto.so.0.9.8
libaprutil-0.so.0 => /usr/local/apache2/lib/libaprutil-0.so.0
libgdbm.so.3 => /usr/local/lib/libgdbm.so.3
libdb-4.2.so => /opt/sfw/lib/libdb-4.2.so
libexpat.so.0 => /usr/local/lib/libexpat.so.0
libiconv.so.2 => /usr/local/lib/libiconv.so.2
libapr-0.so.0 => /usr/local/apache2/lib/libapr-0.so.0
libsendfile.so.1 => /usr/lib/libsendfile.so.1
librt.so.1 => /usr/lib/librt.so.1
libm.so.2 => /usr/lib/libm.so.2
libsocket.so.1 => /usr/lib/libsocket.so.1
libnsl.so.1 => /usr/lib/libnsl.so.1
libresolv.so.2 => /usr/lib/libresolv.so.2
libpthread.so.1 => /usr/lib/libpthread.so.1
libc.so.1 => /usr/lib/libc.so.1
libcrypto.so.0.9.7 => /usr/local/lib/libcrypto.so.0.9.7
libdl.so.1 => /usr/lib/libdl.so.1
libgcc_s.so.1 => /usr/local/lib/libgcc_s.so.1
libaio.so.1 => /usr/lib/libaio.so.1
libmd5.so.1 => /usr/lib/libmd5.so.1
libmp.so.2 => /usr/lib/libmp.so.2
libscf.so.1 => /usr/lib/libscf.so.1
libdoor.so.1 => /usr/lib/libdoor.so.1
libuutil.so.1 => /usr/lib/libuutil.so.1
/platform/SUNW,Sun-Blade-1000/lib/libc_psr.so.1
/platform/SUNW,Sun-Blade-1000/lib/libmd5_psr.so.1

宜しく御願いいたします。
かつ
ベテラン
会議室デビュー日: 2006/04/04
投稿数: 56
投稿日時: 2006-07-07 16:03
原因では無いかもしれませんが、気になった事が。

>libcrypto.so.0.9.8 => /usr/local/ssl/lib/libcrypto.so.0.9.8
>libcrypto.so.0.9.7 => /usr/local/lib/libcrypto.so.0.9.7

openssl-0.9.7系と0.9.8系が両方ともリンクされている?

X509_STORE_CTX_set_depthはopenssl関係ですので、これが関係しているのかな?
339
常連さん
会議室デビュー日: 2005/05/21
投稿数: 34
投稿日時: 2006-07-07 16:40
それが原因ですか?古いバージョンのOpenSSLを削除する場合ですが単純に削除では
だめですよね?良い方法ありますか?
かつ
ベテラン
会議室デビュー日: 2006/04/04
投稿数: 56
投稿日時: 2006-07-07 16:49
>それが原因ですか?
いや、だから分からないです。(^_^;

とりあえず、/usr/local/lib/libcrypto.so.0.9.7 をリネームしてコンパイルし直してみては?
1

スキルアップ/キャリアアップ(JOB@IT)