You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Oscar A Figueroa <pe...@gmail.com> on 2011/09/14 21:47:48 UTC

[users@httpd] Compile Apache HTTP with customized OpenSSL version

Hi!

I'm trying to compile Apache HTTP with a custom OpenSSL version in a Debian
Lenny, but always get the library from the installed package instead of that
i have compiled manually

The versions on the box are:

ii  libssl-dev
      0.9.8g-15+lenny12        SSL development libraries, header files and
ii  libssl0.9.8                         0.9.8g-15+lenny12        SSL shared
libraries
ii  openssl                             0.9.8g-15+lenny12        Secure
Socket Layer (SSL) binary and related

Path:

d48:~# dpkg -L libssl0.9.8
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/libssl0.9.8
/usr/share/doc/libssl0.9.8/copyright
/usr/share/doc/libssl0.9.8/changelog.Debian.gz
/usr/share/doc/libssl0.9.8/changelog.gz
/usr/lib
/usr/lib/libssl.so.0.9.8
/usr/lib/ssl
/usr/lib/ssl/engines
/usr/lib/ssl/engines/libsureware.so
/usr/lib/ssl/engines/libatalla.so
/usr/lib/ssl/engines/lib4758cca.so
/usr/lib/ssl/engines/libcswift.so
/usr/lib/ssl/engines/libgmp.so
/usr/lib/ssl/engines/libchil.so
/usr/lib/ssl/engines/libubsec.so
/usr/lib/ssl/engines/libnuron.so
/usr/lib/ssl/engines/libaep.so
/usr/lib/libcrypto.so.0.9.8


The version that is compiled:

openssl-0.9.8r

Path

/usr/local/openssl-0.9.8r

Configure OpenSSL:

./config --prefix=/usr/local/openssl-0.9.8r
--openssldir=/usr/local/openssl-0.9.8r zlib share

Configure Apache:

CFLAGS=" -I/usr/local/openssl-0.9.8r/include/openssl/" ./configure
--prefix=/usr/local/apache2 --enable-proxy --enable-so --enable-ssl
--enable-deflate --enable-auth-digest --enable-http --enable-rewrite
--enable-info --enable-cgi --enable-logio --with-mpm=worker --enable-suexec
--enable-vhost-alias --with-suexec-caller=apache
--with-ssl=/usr/local/openssl-0.9.8r
--with-suexec-bin=/usr/local/apache2/sbin/suexec --enable-module=all
--with-suexec-docroot=/
--with-suexec-logfile=/usr/local/apache2/logs/suexec.log --enable-cache
--enable-mem-cache --enable-file-cache --enable-disk-cache
--enable-mods-shared=all

After compile, the result of the 'ldd /usr/local/apache2/modules/mod_ssl.so'
command is:

        linux-vdso.so.1 =>  (0x00007ffff93ff000)
        libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8 (0x00007f1929a65000)
        libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8
(0x00007f19296ca000)
        libdl.so.2 => /lib/libdl.so.2 (0x00007f19294c5000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00007f19292ae000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007f1929092000)
        libc.so.6 => /lib/libc.so.6 (0x00007f1928d3e000)
        /lib/ld-linux.so.2 (0x00007f1929ef3000)

As is visible, the libssl linked is not the /usr/local/openssl-0.9.8r that
was compiled manually.

Is there any way to compile with my customized openssl?

Notes:

After compile openssl, i cant add the path to the /etc/ld.so.conf an make
'ldconfig' because this makes that ssh service fails per the use of the
compiled libcrypto.so

Thanks :)

Re: [users@httpd] Compile Apache HTTP with customized OpenSSL version

Posted by Ian Zimmerman <it...@buug.org>.
Oscar> As is visible, the libssl linked is not the
Oscar> /usr/local/openssl-0.9.8r that was compiled manually.

Oscar> After compile openssl, i cant add the path to the /etc/ld.so.conf
Oscar> an make 'ldconfig' because this makes that ssh service fails per
Oscar> the use of the compiled libcrypto.so

Methinks you need -rpath linker option.  No idea how to force the build
to use it, though.

-- 
Ian Zimmerman
gpg public key: 1024D/C6FF61AD
fingerprint: 66DC D68F 5C1B 4D71 2EE5  BD03 8A00 786C C6FF 61AD
Rule 420: All persons more than eight miles high to leave the court.

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org