How to building OpenSSL 0.9.8c

时间:2021-02-05 19:24:09

Building a Web Server, for Linux

Requirements

Perl

Download

Our Configuration

  • Install to : /usr/local/ssl
  • Module type : dynamically and staticly loaded modules, *.so *.a

Build Instructions

Configure
.../openssl-0.9.8c]# ./config --prefix=/usr/local/ssl-0.9.8c shared zlib-dynamic enable-camellia
  • --prefix=/usr/local/ssl-0.9.8c
    [this is the installation location; default is '/usr/local/ssl' -- which we will symlink]
  • shared
    [in addition to the usual static libraries, create shared libraries]
  • zlib-dynamic
    [like "zlib", but has OpenSSL load the zlib library dynamically when needed]
  • enable-camellia
    [enables the symmetric cipher 'Camellia' (128-bit, 192-bit, 256-bit key versions), which is now available for royalty-free use]

display guess on system made by './config'...

.../openssl-0.9.8c]# ./config -t
Build and Install
  • .../openssl-0.9.8c]# make depend
    [step required since extra cipher was enabled]
  • .../openssl-0.9.8c]# make
  • .../openssl-0.9.8c]# make test
  • .../openssl-0.9.8c]# make install
Symlink

Form symlink from '/usr/local/ssl-0.9.8c' to '/usr/local/ssl'

  • ...]# cd /usr/local
  • /usr/local]# ln -s ssl-0.9.8c ssl

Update the Run-time Linker

ld.so.cache will need to be updated with the location of the new OpenSSL shared libs: libcrypto.so.0.9.8 and libssl.so.0.9.8

Sometimes it is sufficient to just symlink or copy these two files to /lib, but we recommend you follow these instructions instead.

Edit /etc/ld.so.conf, add to paths...

/usr/local/ssl/lib

Update the run-time linker...

...]# ldconfig

Update the PATH

Edit /root/.bash_profile, add to PATH variable...

/usr/local/ssl/bin

Re-login.

[sanity check] OpenSSL

Verify that binary 'openssl' is linking against the correct ssl libraries...

...]# ldd /usr/local/ssl/bin/openssl
  • libssl.so.0.9.8 => /usr/local/ssl-0.9.8c/lib/libssl.so.0.9.8 ...
  • libcrypto.so.0.9.8 => /usr/local/ssl-0.9.8c/lib/libcrypto.so.0.9.8 ...
...]# which openssl
/usr/local/ssl/bin/openssl
...]# openssl version
OpenSSL 0.9.8c 05 Sep 2006

If another path, or an older version is shown, your system contains a previously installed OpenSSL that is first [relative to the newer openssl] in the path.

Repeate the steps in section 'Update the PATH', except place the specified location at the start of the PATH variable.

Note that the older openssl, on most systems, is located under /usr/bin

The location of 'openssl' can be found with...

...]# which openssl


转载http://www.devside.net/guides/linux/openssl