source: postlfs/security/openssl.xml@ 8e848de9

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 12.2 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gimp3 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/for-12.3 xry111/intltool xry111/llvm18 xry111/soup3 xry111/spidermonkey128 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 8e848de9 was 8e848de9, checked in by Bruce Dubbs <bdubbs@…>, 7 years ago

Add gcc7_checked entity.
Minor editorial changes.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@18716 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 9.8 KB
RevLine 
[52d29f7]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[52d29f7]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[bbdb0d16]7 <!ENTITY openssl-download-http
[17f36b0]8 "https://openssl.org/source/openssl-&openssl-version;.tar.gz">
[bbdb0d16]9 <!ENTITY openssl-download-ftp
[17f36b0]10 "ftp://openssl.org/source/openssl-&openssl-version;.tar.gz">
[fb99cbf0]11 <!ENTITY openssl-md5sum "f965fc0bf01bf882b31314b61391ae65">
[30d6b736]12 <!ENTITY openssl-size "5.1 MB">
[fb99cbf0]13 <!ENTITY openssl-buildsize "50 MB (with tests)">
[30d6b736]14 <!ENTITY openssl-time "1.4 SBU (with tests)">
[52d29f7]15]>
16
[cef3a2f]17<sect1 id="openssl" xreflabel="OpenSSL-&openssl-version;">
[5a5bbbf]18 <?dbhtml filename="openssl.html"?>
19
20 <sect1info>
21 <othername>$LastChangedBy$</othername>
22 <date>$Date$</date>
23 </sect1info>
24
25 <title>OpenSSL-&openssl-version;</title>
26
27 <indexterm zone="openssl">
28 <primary sortas="a-OpenSSL">OpenSSL</primary>
29 </indexterm>
30
31 <sect2 role="package">
32 <title>Introduction to OpenSSL</title>
33
[bbdb0d16]34 <para>
35 The <application>OpenSSL</application> package contains management tools
36 and libraries relating to cryptography. These are useful for providing
[45db70f]37 cryptographic functions to other packages, such as
[bbdb0d16]38 <application>OpenSSH</application>, email applications and web browsers
39 (for accessing HTTPS sites).
40 </para>
[5a5bbbf]41
[63a26beb]42 &lfs80_checked;
[8e848de9]43 &gcc7_checked;
[aafcfb8]44
[5a5bbbf]45 <bridgehead renderas="sect3">Package Information</bridgehead>
46 <itemizedlist spacing="compact">
47 <listitem>
[bbdb0d16]48 <para>
49 Download (HTTP): <ulink url="&openssl-download-http;"/>
50 </para>
[5a5bbbf]51 </listitem>
52 <listitem>
[bbdb0d16]53 <para>
54 Download (FTP): <ulink url="&openssl-download-ftp;"/>
55 </para>
[5a5bbbf]56 </listitem>
57 <listitem>
[bbdb0d16]58 <para>
59 Download MD5 sum: &openssl-md5sum;
60 </para>
[5a5bbbf]61 </listitem>
62 <listitem>
[bbdb0d16]63 <para>
64 Download size: &openssl-size;
65 </para>
[5a5bbbf]66 </listitem>
67 <listitem>
[bbdb0d16]68 <para>
69 Estimated disk space required: &openssl-buildsize;
70 </para>
[5a5bbbf]71 </listitem>
72 <listitem>
[bbdb0d16]73 <para>
74 Estimated build time: &openssl-time;
75 </para>
[5a5bbbf]76 </listitem>
77 </itemizedlist>
[03da570f]78<!--
[5a5bbbf]79 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
[4c39aff]80 <itemizedlist spacing="compact">
[5a5bbbf]81 <listitem>
[bbdb0d16]82 <para>
[4f746dd]83 Required patch:
[8ac16b1]84 <ulink url="&patch-root;/openssl-&openssl-version;-fix_parallel_build-1.patch"/>
[4f746dd]85 </para>
86 </listitem>
[5a5bbbf]87 </itemizedlist>
[03da570f]88-->
[5a5bbbf]89 <bridgehead renderas="sect3">OpenSSL Dependencies</bridgehead>
90
91 <bridgehead renderas="sect4">Optional</bridgehead>
[bbdb0d16]92 <para role="optional">
[4c39aff]93 <xref linkend="mitkrb"/>
[bbdb0d16]94 </para>
[5a5bbbf]95
[bbdb0d16]96 <para condition="html" role="usernotes">
97 User Notes: <ulink url='&blfs-wiki;/OpenSSL'/>
98 </para>
[5a5bbbf]99 </sect2>
100
101 <sect2 role="installation">
102 <title>Installation of OpenSSL</title>
103
[b88584a]104 <note>
105 <para>
106 This package does not support parallel build.
107 </para>
108 </note>
109
[bbdb0d16]110 <para>
[d5d39eb]111 Install <application>OpenSSL</application> with the following commands:
[bbdb0d16]112 </para>
[5a5bbbf]113
[f82ac3f]114
[03da570f]115<screen><userinput>./config --prefix=/usr \
[c96921c]116 --openssldir=/etc/ssl \
[202d18d]117 --libdir=lib \
[c96921c]118 shared \
119 zlib-dynamic &amp;&amp;
[20cc6df]120make depend &amp;&amp;
[b88584a]121make -j1</userinput></screen>
[a181baeb]122
[bbdb0d16]123 <para>
[35f1730]124 To test the results, issue: <command>make -j1 test</command>. The
125 test suite does not support parallel jobs.
[bbdb0d16]126 </para>
127
128 <para>
129 If you want to disable installing the static libraries, use this sed:
130 </para>
[5a5bbbf]131
[bbdb0d16]132<screen><userinput>sed -i 's# libcrypto.a##;s# libssl.a##' Makefile</userinput></screen>
133
134 <para>
135 Now, as the <systemitem class="username">root</systemitem> user:
136 </para>
[5a5bbbf]137
[1faedf0]138<!-- dev note: make INSTALL_PREFIX=<DESTDIR> MANDIR=/usr/share/man MANSUFFIX=ssl install -->
139
[25a105fe]140<screen role="root"><userinput>make MANDIR=/usr/share/man MANSUFFIX=ssl install &amp;&amp;
[d6b6ecb]141install -dv -m755 /usr/share/doc/openssl-&openssl-version; &amp;&amp;
[4c39aff]142cp -vfr doc/* /usr/share/doc/openssl-&openssl-version;</userinput></screen>
143
[5a5bbbf]144 </sect2>
145
146 <sect2 role="commands">
147 <title>Command Explanations</title>
148
[bbdb0d16]149 <para>
150 <parameter>shared</parameter>: This parameter forces the creation of
151 shared libraries along with the static libraries.
152 </para>
153
154 <para>
155 <parameter>zlib-dynamic</parameter>: This parameter adds
156 compression/decompression functionality using the
157 <filename class="libraryfile">libz</filename> library.
158 </para>
159
160 <para>
161 <option>no-rc5 no-idea</option>: When added to the
162 <command>./config</command> command, this will eliminate the building
163 of those encryption methods. Patent licenses may be needed for you to
164 utilize either of those methods in your projects.
165 </para>
166
167 <para>
[d6b6ecb]168 <command>make MANDIR=/usr/share/man MANSUFFIX=ssl install</command>:
169 This command installs <application>OpenSSL</application> with the man
170 pages in <filename class="directory">/usr/share/man</filename>
171 instead of <filename class="directory">/etc/ssl/man</filename> and
172 appends "ssl" suffix to the manual page names to avoid conflicts with
173 manual pages installed by other packages.
[bbdb0d16]174 </para>
[4c39aff]175
[5a5bbbf]176 </sect2>
177
178 <sect2 role="configuration">
179 <title>Configuring OpenSSL</title>
180
181 <sect3 id="openssl-config">
182 <title>Config Files</title>
183
[bbdb0d16]184 <para>
[d5d39eb]185 <filename>/etc/ssl/openssl.cnf</filename>
[bbdb0d16]186 </para>
[5a5bbbf]187
188 <indexterm zone="openssl openssl-config">
189 <primary sortas="e-etc-ssl-openssl.cnf">/etc/ssl/openssl.cnf</primary>
190 </indexterm>
[4c39aff]191
[5a5bbbf]192 </sect3>
[d5d39eb]193
[5a5bbbf]194 <sect3>
195 <title>Configuration Information</title>
196
[bbdb0d16]197 <para>
198 Most users will want to install Certificate Authority Certificates
[5f91dfd]199 for validation of downloaded certificates. For example, these
[d5d39eb]200 certificates can be used by <xref linkend='git'/>,
201 <xref linkend='curl'/> or <xref linkend='wget'/> when accessing secure
202 (https protocol) sites. To do this, follow the instructions from the
203 <xref linkend='cacerts'/> page.
[0d7900a]204 </para>
[bbdb0d16]205
206 <para>
207 Users who just want to use <application>OpenSSL</application> for
208 providing functions to other programs such as
209 <application>OpenSSH</application> and web browsers do not need to worry
[f586237]210 about additional configuration. This is an advanced topic and those
[bbdb0d16]211 who do need it would normally be expected to either know how to properly
212 update <filename>/etc/ssl/openssl.cnf</filename> or be able to find out
213 how to do it.
214 </para>
[4c39aff]215
[5a5bbbf]216 </sect3>
[4c39aff]217
[5a5bbbf]218 </sect2>
219
220 <sect2 role="content">
221 <title>Contents</title>
222
223 <segmentedlist>
224 <segtitle>Installed Programs</segtitle>
225 <segtitle>Installed Libraries</segtitle>
226 <segtitle>Installed Directories</segtitle>
227
228 <seglistitem>
[bbdb0d16]229 <seg>
[4c39aff]230 c_rehash and openssl
[d5d39eb]231 </seg>
232 <seg>
[4de0151]233 libcrypto.{so,a} and libssl.{so,a}
[4c39aff]234 </seg>
235 <seg>
236 /etc/ssl,
237 /usr/include/openssl,
238 /usr/lib/engines and
239 /usr/share/doc/openssl-&openssl-version;
[bbdb0d16]240 </seg>
[5a5bbbf]241 </seglistitem>
242 </segmentedlist>
243
244 <variablelist>
245 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
246 <?dbfo list-presentation="list"?>
247 <?dbhtml list-presentation="table"?>
248
249 <varlistentry id="c_rehash">
250 <term><command>c_rehash</command></term>
251 <listitem>
[bbdb0d16]252 <para>
253 is a <application>Perl</application> script that scans all files in
254 a directory and adds symbolic links to their hash values.
255 </para>
[5a5bbbf]256 <indexterm zone="openssl c_rehash">
257 <primary sortas="b-c_rehash">c_rehash</primary>
258 </indexterm>
259 </listitem>
260 </varlistentry>
261
262 <varlistentry id="openssl-prog">
263 <term><command>openssl</command></term>
264 <listitem>
[bbdb0d16]265 <para>
266 is a command-line tool for using the various cryptography functions
267 of <application>OpenSSL</application>'s crypto library from the
268 shell. It can be used for various functions which are documented in
269 <command>man 1 openssl</command>.
270 </para>
[5a5bbbf]271 <indexterm zone="openssl openssl-prog">
272 <primary sortas="b-openssl">openssl</primary>
273 </indexterm>
274 </listitem>
275 </varlistentry>
276
277 <varlistentry id="libcrypto">
[4c39aff]278 <term><filename class="libraryfile">libcrypto.{so,a}</filename></term>
[5a5bbbf]279 <listitem>
[bbdb0d16]280 <para>
281 implements a wide range of cryptographic algorithms used in various
282 Internet standards. The services provided by this library are used
283 by the <application>OpenSSL</application> implementations of SSL,
284 TLS and S/MIME, and they have also been used to implement
285 <application>OpenSSH</application>,
286 <application>OpenPGP</application>, and other cryptographic
287 standards.
288 </para>
[5a5bbbf]289 <indexterm zone="openssl libcrypto">
[3597eb6]290 <primary sortas="c-libcrypto">libcrypto.{so,a}</primary>
[5a5bbbf]291 </indexterm>
292 </listitem>
293 </varlistentry>
294
295 <varlistentry id="libssl">
[4c39aff]296 <term><filename class="libraryfile">libssl.{so,a}</filename></term>
[5a5bbbf]297 <listitem>
[bbdb0d16]298 <para>
[d78194f3]299 implements the Transport Layer Security (TLS v1) protocol.
300 It provides a rich API, documentation
[bbdb0d16]301 on which can be found by running <command>man 3 ssl</command>.
302 </para>
[5a5bbbf]303 <indexterm zone="openssl libssl">
[3597eb6]304 <primary sortas="c-libssl">libssl.{so,a}</primary>
[5a5bbbf]305 </indexterm>
306 </listitem>
307 </varlistentry>
[4c39aff]308
[5a5bbbf]309 </variablelist>
[4c39aff]310
[5a5bbbf]311 </sect2>
[4c39aff]312
[f45b1953]313</sect1>
Note: See TracBrowser for help on using the repository browser.