#### Linux From Scratch - Version 10.1-rc1

### Chapter 8. Installing Basic System Software

- Prev

  Libffi-3.3

- Next

  Python-3.9.1

- Up
- Home

# 8.48. OpenSSL-1.1.1j

The OpenSSL package contains management tools and libraries relating to cryptography. These are useful for providing cryptographic functions to other packages, such as OpenSSH, email applications, and web browsers (for accessing HTTPS sites).

Approximate build time: 2.2 SBU
Required disk space: 154 MB

## 8.48.1. Installation of OpenSSL

Prepare OpenSSL for compilation:

    ./config --prefix=/usr         \
             --openssldir=/etc/ssl \
             --libdir=lib          \
             shared                \
             zlib-dynamic

Compile the package:

    make

To test the results, issue:

    make test

One test 30-test_afalg.t is known to fail on some kernel configurations (it apparently assumes certain unspecified crypto options have been selected).

Install the package:

    sed -i '/INSTALL_LIBS/s/libcrypto.a libssl.a//' Makefile
    make MANSUFFIX=ssl install

Add the version to the documentation directory name, to be consistent with other packages:

    mv -v /usr/share/doc/openssl /usr/share/doc/openssl-1.1.1j

If desired, install some additional documentation:

    cp -vfr doc/* /usr/share/doc/openssl-1.1.1j

## 8.48.2. Contents of OpenSSL

Installed programs: c_rehash and openssl
Installed libraries: libcrypto.so and libssl.so
Installed directories: /etc/ssl, /usr/include/openssl, /usr/lib/engines and /usr/share/doc/openssl-1.1.1j

### Short Descriptions

c_rehash | is a Perl script that scans all files in a directory and adds symbolic links to their hash values
openssl | is a command-line tool for using the various cryptography functions of OpenSSL's crypto library from the shell. It can be used for various functions which are documented in man 1 openssl
`libcrypto.so` | implements a wide range of cryptographic algorithms used in various Internet standards. The services provided by this library are used by the OpenSSL implementations of SSL, TLS and S/MIME, and they have also been used to implement OpenSSH, OpenPGP, and other cryptographic standards
`libssl.so` | implements the Transport Layer Security (TLS v1) protocol. It provides a rich API, documentation on which can be found by running man 3 ssl

- Prev

  Libffi-3.3

- Next

  Python-3.9.1

- Up
- Home