source: postlfs/security/openssl.xml@ 286c613d

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 286c613d was c9b953e6, checked in by Bruce Dubbs <bdubbs@…>, 13 years ago

Add a separate page for CA certificates.
Update to openssl-1.0.0e.
Update to bc-1.06.95.

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

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