source: postlfs/security/openssl.xml@ 1db74e9

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 1db74e9 was 1db74e9, checked in by DJ Lucas <dj@…>, 15 years ago

corrected path of ca-bundle.crt, recommended dep of OpenSSL, and corrected id for rootcerts.

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

  • Property mode set to 100644
File size: 10.1 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY openssl-download-http "http://www.openssl.org/source/openssl-&openssl-version;.tar.gz">
8 <!ENTITY openssl-download-ftp "ftp://ftp.openssl.org/source/openssl-&openssl-version;.tar.gz">
9 <!ENTITY openssl-md5sum "a5cb5f6c3d11affb387ecf7a997cac0c">
10 <!ENTITY openssl-size "3.7 MB">
11 <!ENTITY openssl-buildsize "45 MB">
12 <!ENTITY openssl-time "1.2 SBU (additional 0.3 SBU to run the test suite)">
13]>
14
15<sect1 id="openssl" xreflabel="OpenSSL-&openssl-version;">
16 <?dbhtml filename="openssl.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>OpenSSL-&openssl-version;</title>
24
25 <indexterm zone="openssl">
26 <primary sortas="a-OpenSSL">OpenSSL</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to OpenSSL</title>
31
32 <para>The <application>OpenSSL</application> package contains management
33 tools and libraries relating to cryptography. These are useful for
34 providing cryptography functions to other packages, notably
35 <application>OpenSSH</application>, email applications and web browsers
36 (for accessing HTTPS sites).</para>
37
38 <bridgehead renderas="sect3">Package Information</bridgehead>
39 <itemizedlist spacing="compact">
40 <listitem>
41 <para>Download (HTTP): <ulink url="&openssl-download-http;"/></para>
42 </listitem>
43 <listitem>
44 <para>Download (FTP): <ulink url="&openssl-download-ftp;"/></para>
45 </listitem>
46 <listitem>
47 <para>Download MD5 sum: &openssl-md5sum;</para>
48 </listitem>
49 <listitem>
50 <para>Download size: &openssl-size;</para>
51 </listitem>
52 <listitem>
53 <para>Estimated disk space required: &openssl-buildsize;</para>
54 </listitem>
55 <listitem>
56 <para>Estimated build time: &openssl-time;</para>
57 </listitem>
58 </itemizedlist>
59
60 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
61 <itemizedlist spacing='compact'>
62 <listitem>
63 <para>Required patch: <ulink
64 url="&patch-root;/openssl-&openssl-version;-fix_manpages-1.patch"/></para>
65 </listitem>
66 </itemizedlist>
67
68 <bridgehead renderas="sect3">OpenSSL Dependencies</bridgehead>
69
70 <bridgehead renderas="sect4">Recommended</bridgehead>
71 <para role="recommended"><xref linkend="bc"/>(if you run the test suite
72 during the build) and <xref linkend="rootcerts"/></para>
73
74 <bridgehead renderas="sect4">Optional</bridgehead>
75 <para role="optional"><xref linkend="mitkrb"/> or
76 <xref linkend="heimdal"/></para>
77
78 <para condition="html" role="usernotes">User Notes:
79 <ulink url='&blfs-wiki;/OpenSSL'/></para>
80
81 </sect2>
82
83 <sect2 role="installation">
84 <title>Installation of OpenSSL</title>
85
86 <para>Install <application>OpenSSL</application> by running
87 the following commands:</para>
88
89<screen><userinput>patch -Np1 -i ../openssl-&openssl-version;-fix_manpages-1.patch &amp;&amp;
90./config --prefix=/usr \
91 --openssldir=/etc/ssl \
92 shared \
93 zlib-dynamic &amp;&amp;
94make</userinput></screen>
95
96 <para>To test the results, issue: <command>make test</command>.</para>
97
98 <!-- <para>To test the results, issue: <command>make test</command>. Note that the
99 test results/output depend on the availability of /etc/ssl/openssl.cnf. If
100 running the tests for the first time run the following as the
101 <systemitem class="username">root</systemitem> user before running the
102 tests:</para>
103
104<screen role="root"><userinput>install -v -m755 d /etc/ssl &amp;&amp;
105install -v ./apps/openssl.cnf /etc/ssl/</userinput></screen> -->
106
107 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
108
109<screen role="root"><userinput>make MANDIR=/usr/share/man install &amp;&amp;
110
111cp -v -r certs /etc/ssl &amp;&amp;
112
113install -v -d -m755 /usr/share/doc/openssl-&openssl-version; &amp;&amp;
114cp -v -r doc/{HOWTO,README,*.{txt,html,gif}} \
115 /usr/share/doc/openssl-&openssl-version;</userinput></screen>
116
117 </sect2>
118
119 <sect2 role="commands">
120 <title>Command Explanations</title>
121
122 <para><parameter>shared</parameter>: This parameter forces the creation of
123 shared libraries along with the static libraries.</para>
124
125 <para><parameter>zlib-dynamic</parameter>: This parameter adds
126 compression/decompression functionality using the
127 <filename class="libraryfile">libz</filename> library.</para>
128
129 <para><option>no-rc5 no-idea</option>: When added to the
130 <command>./config</command> command, this will eliminate the building
131 of those encryption methods. Patent licenses may be needed for you to
132 utilize either of those methods in your projects.</para>
133
134 <para><command>make MANDIR=/usr/share/man install</command>: This command
135 installs <application>OpenSSL</application> with the man pages in
136 <filename class='directory'>/usr/share/man</filename> instead of
137 <filename class='directory'>/etc/ssl/man</filename>.</para>
138
139 <!-- <para><option>enable-tlsext</option>: When added to the
140 <command>./config</command> command, this switch will enable TLS
141 Extensions. Currently this is only RFC 3546 and 4507bis for Server Name
142 Indication. This allows the use of multiple SSL certificates with multiple
143 virtual hosts in Apache, while using only one IP address and one port for
144 all virtual hosts.</para> -->
145
146 <!-- <para><option>zlib-dynamic</option>: When added to the
147 <command>./config</command> command, this switch will enable
148 use of <filename>libz.so</filename> for compression/decompression.</para> -->
149
150 <para><command>cp -v -r certs /etc/ssl</command>: This package no longer
151 ships CA certificates. This commands installs documentation and sample
152 certificates as examples should one want to create/install their own
153 certificates.</para>
154
155 </sect2>
156
157 <sect2 role="configuration">
158 <title>Configuring OpenSSL</title>
159
160 <sect3 id="openssl-config">
161 <title>Config Files</title>
162
163 <para><filename>/etc/ssl/openssl.cnf</filename></para>
164
165 <indexterm zone="openssl openssl-config">
166 <primary sortas="e-etc-ssl-openssl.cnf">/etc/ssl/openssl.cnf</primary>
167 </indexterm>
168
169 </sect3>
170
171 <sect3>
172 <title>Configuration Information</title>
173
174 <para>Most people who just want to use <application>OpenSSL</application>
175 for providing functions to other programs such as
176 <application>OpenSSH</application> and web browsers won't need to worry
177 about configuring <application>OpenSSL</application>. Configuring
178 <application>OpenSSL</application> is an advanced topic and so those
179 who do would normally be expected to either know how to do it or to be
180 able to find out how to do it.</para>
181
182 </sect3>
183
184 </sect2>
185
186 <sect2 role="content">
187 <title>Contents</title>
188
189 <segmentedlist>
190 <segtitle>Installed Programs</segtitle>
191 <segtitle>Installed Libraries</segtitle>
192 <segtitle>Installed Directories</segtitle>
193
194 <seglistitem>
195 <seg>c_rehash and openssl</seg>
196 <seg>libcrypto.{so,a}, libssl.{so,a}, and additional encryption
197 libraries in /usr/lib/engines/ (lib4758cca.so, libaep.so,
198 libatalla.so, libcapi.so, libchil.so, libcswift.so, libgmp.so, libnuron.so,
199 libsureware.so, and libubsec.so)</seg>
200 <seg>/etc/ssl, /usr/include/ssl, /usr/lib/engines
201 and /usr/share/doc/openssl-&openssl-version;</seg>
202 </seglistitem>
203 </segmentedlist>
204
205 <variablelist>
206 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
207 <?dbfo list-presentation="list"?>
208 <?dbhtml list-presentation="table"?>
209
210 <varlistentry id="c_rehash">
211 <term><command>c_rehash</command></term>
212 <listitem>
213 <para>is a <application>Perl</application> script that scans
214 all files in a directory and adds symbolic links to their hash
215 values.</para>
216 <indexterm zone="openssl c_rehash">
217 <primary sortas="b-c_rehash">c_rehash</primary>
218 </indexterm>
219 </listitem>
220 </varlistentry>
221
222 <varlistentry id="openssl-prog">
223 <term><command>openssl</command></term>
224 <listitem>
225 <para>is a command-line tool for using the various cryptography
226 functions of <application>OpenSSL</application>'s crypto
227 library from the shell. It can be used for various functions which are
228 documented in <command>man 1 openssl</command>.</para>
229 <indexterm zone="openssl openssl-prog">
230 <primary sortas="b-openssl">openssl</primary>
231 </indexterm>
232 </listitem>
233 </varlistentry>
234
235 <varlistentry id="libcrypto">
236 <term><filename class='libraryfile'>libcrypto.{so,a}</filename></term>
237 <listitem>
238 <para>implements a wide range of cryptographic algorithms used in
239 various Internet standards. The services provided by this library
240 are used by the <application>OpenSSL</application> implementations of
241 SSL, TLS and S/MIME, and they have also been used to implement
242 <application>OpenSSH</application>, <application>OpenPGP</application>,
243 and other cryptographic standards.</para>
244 <indexterm zone="openssl libcrypto">
245 <primary sortas="c-libcrypto">libcrypto.{so,a}</primary>
246 </indexterm>
247 </listitem>
248 </varlistentry>
249
250 <varlistentry id="libssl">
251 <term><filename class='libraryfile'>libssl.{so,a}</filename></term>
252 <listitem>
253 <para>implements the Secure Sockets Layer (SSL v2/v3) and Transport
254 Layer Security (TLS v1) protocols. It provides a rich API, documentation
255 on which can be found by running <command>man 3 ssl</command>.</para>
256 <indexterm zone="openssl libssl">
257 <primary sortas="c-libssl">libssl.{so,a}</primary>
258 </indexterm>
259 </listitem>
260 </varlistentry>
261
262 </variablelist>
263
264 </sect2>
265
266</sect1>
Note: See TracBrowser for help on using the repository browser.