source: postlfs/security/openssl.xml@ b4d6d68

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 b4d6d68 was b4d6d68, checked in by Randy McMurchy <randy@…>, 11 years ago

Modified the OpenSSL documentation installation instructions

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

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