source: postlfs/security/openssl.xml@ adf6dd9a

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 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 adf6dd9a was adf6dd9a, checked in by Bruce Dubbs <bdubbs@…>, 11 years ago

Archive unneeded packages: pkgconfig,

bc, ibus, udev, slib, gamin, and notify-python

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

  • Property mode set to 100644
File size: 9.8 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 "66bf6f10f060d561929de96f9dfe5b8c">
12 <!ENTITY openssl-size "4.3 MB">
13 <!ENTITY openssl-buildsize "55 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 &lfs74_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:
83 <ulink url="&patch-root;/openssl-&openssl-version;-fix_parallel_build-1.patch"/>
84 </para>
85 </listitem>
86 <listitem>
87 <para>
88 Required patch:
89 <ulink url="&patch-root;/openssl-&openssl-version;-fix_pod_syntax-1.patch"/>
90 </para>
91 </listitem>
92 </itemizedlist>
93
94 <bridgehead renderas="sect3">OpenSSL Dependencies</bridgehead>
95
96 <bridgehead renderas="sect4">Optional</bridgehead>
97 <para role="optional">
98 <xref linkend="mitkrb"/>
99 </para>
100
101 <para condition="html" role="usernotes">
102 User Notes: <ulink url='&blfs-wiki;/OpenSSL'/>
103 </para>
104 </sect2>
105
106 <sect2 role="installation">
107 <title>Installation of OpenSSL</title>
108
109 <para>
110 Install <application>OpenSSL</application> with the following commands:
111 </para>
112
113<screen><userinput>patch -Np1 -i ../openssl-&openssl-version;-fix_parallel_build-1.patch &amp;&amp;
114patch -Np1 -i ../openssl-&openssl-version;-fix_pod_syntax-1.patch &amp;&amp;
115
116./config --prefix=/usr \
117 --openssldir=/etc/ssl \
118 shared \
119 zlib-dynamic &amp;&amp;
120make</userinput></screen>
121
122 <para>
123 To test the results, issue: <command>make test</command>.
124 </para>
125
126 <para>
127 If you want to disable installing the static libraries, use this sed:
128 </para>
129
130<screen><userinput>sed -i 's# libcrypto.a##;s# libssl.a##' Makefile</userinput></screen>
131
132 <para>
133 Now, as the <systemitem class="username">root</systemitem> user:
134 </para>
135
136<screen role="root"><userinput>make MANDIR=/usr/share/man MANSUFFIX=ssl install &amp;&amp;
137install -dv -m755 /usr/share/doc/openssl-&openssl-version; &amp;&amp;
138cp -vfr doc/* /usr/share/doc/openssl-&openssl-version;</userinput></screen>
139
140 </sect2>
141
142 <sect2 role="commands">
143 <title>Command Explanations</title>
144
145 <para>
146 <parameter>shared</parameter>: This parameter forces the creation of
147 shared libraries along with the static libraries.
148 </para>
149
150 <para>
151 <parameter>zlib-dynamic</parameter>: This parameter adds
152 compression/decompression functionality using the
153 <filename class="libraryfile">libz</filename> library.
154 </para>
155
156 <para>
157 <option>no-rc5 no-idea</option>: When added to the
158 <command>./config</command> command, this will eliminate the building
159 of those encryption methods. Patent licenses may be needed for you to
160 utilize either of those methods in your projects.
161 </para>
162
163 <para>
164 <command>make MANDIR=/usr/share/man MANSUFFIX=ssl install</command>:
165 This command installs <application>OpenSSL</application> with the man
166 pages in <filename class="directory">/usr/share/man</filename>
167 instead of <filename class="directory">/etc/ssl/man</filename> and
168 appends "ssl" suffix to the manual page names to avoid conflicts with
169 manual pages installed by other packages.
170 </para>
171
172 </sect2>
173
174 <sect2 role="configuration">
175 <title>Configuring OpenSSL</title>
176
177 <sect3 id="openssl-config">
178 <title>Config Files</title>
179
180 <para>
181 <filename>/etc/ssl/openssl.cnf</filename>
182 </para>
183
184 <indexterm zone="openssl openssl-config">
185 <primary sortas="e-etc-ssl-openssl.cnf">/etc/ssl/openssl.cnf</primary>
186 </indexterm>
187
188 </sect3>
189
190 <sect3>
191 <title>Configuration Information</title>
192
193 <para>
194 Most users will want to install Certificate Authority Certificates
195 for validation of downloaded certificates. For example, these
196 certificates can be used by <xref linkend='git'/>,
197 <xref linkend='curl'/> or <xref linkend='wget'/> when accessing secure
198 (https protocol) sites. To do this, follow the instructions from the
199 <xref linkend='cacerts'/> page.
200 </para>
201
202 <para>
203 Users who just want to use <application>OpenSSL</application> for
204 providing functions to other programs such as
205 <application>OpenSSH</application> and web browsers do not need to worry
206 about additional configuration. This is an advanced topic and so those
207 who do need it would normally be expected to either know how to properly
208 update <filename>/etc/ssl/openssl.cnf</filename> or be able to find out
209 how to do it.
210 </para>
211
212 </sect3>
213
214 </sect2>
215
216 <sect2 role="content">
217 <title>Contents</title>
218
219 <segmentedlist>
220 <segtitle>Installed Programs</segtitle>
221 <segtitle>Installed Libraries</segtitle>
222 <segtitle>Installed Directories</segtitle>
223
224 <seglistitem>
225 <seg>
226 c_rehash and openssl
227 </seg>
228 <seg>
229 libcrypto.{so,a} and libssl.{so,a}
230 </seg>
231 <seg>
232 /etc/ssl,
233 /usr/include/openssl,
234 /usr/lib/engines and
235 /usr/share/doc/openssl-&openssl-version;
236 </seg>
237 </seglistitem>
238 </segmentedlist>
239
240 <variablelist>
241 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
242 <?dbfo list-presentation="list"?>
243 <?dbhtml list-presentation="table"?>
244
245 <varlistentry id="c_rehash">
246 <term><command>c_rehash</command></term>
247 <listitem>
248 <para>
249 is a <application>Perl</application> script that scans all files in
250 a directory and adds symbolic links to their hash values.
251 </para>
252 <indexterm zone="openssl c_rehash">
253 <primary sortas="b-c_rehash">c_rehash</primary>
254 </indexterm>
255 </listitem>
256 </varlistentry>
257
258 <varlistentry id="openssl-prog">
259 <term><command>openssl</command></term>
260 <listitem>
261 <para>
262 is a command-line tool for using the various cryptography functions
263 of <application>OpenSSL</application>'s crypto library from the
264 shell. It can be used for various functions which are documented in
265 <command>man 1 openssl</command>.
266 </para>
267 <indexterm zone="openssl openssl-prog">
268 <primary sortas="b-openssl">openssl</primary>
269 </indexterm>
270 </listitem>
271 </varlistentry>
272
273 <varlistentry id="libcrypto">
274 <term><filename class="libraryfile">libcrypto.{so,a}</filename></term>
275 <listitem>
276 <para>
277 implements a wide range of cryptographic algorithms used in various
278 Internet standards. The services provided by this library are used
279 by the <application>OpenSSL</application> implementations of SSL,
280 TLS and S/MIME, and they have also been used to implement
281 <application>OpenSSH</application>,
282 <application>OpenPGP</application>, and other cryptographic
283 standards.
284 </para>
285 <indexterm zone="openssl libcrypto">
286 <primary sortas="c-libcrypto">libcrypto.{so,a}</primary>
287 </indexterm>
288 </listitem>
289 </varlistentry>
290
291 <varlistentry id="libssl">
292 <term><filename class="libraryfile">libssl.{so,a}</filename></term>
293 <listitem>
294 <para>
295 implements the Secure Sockets Layer (SSL v2/v3) and Transport Layer
296 Security (TLS v1) protocols. It provides a rich API, documentation
297 on which can be found by running <command>man 3 ssl</command>.
298 </para>
299 <indexterm zone="openssl libssl">
300 <primary sortas="c-libssl">libssl.{so,a}</primary>
301 </indexterm>
302 </listitem>
303 </varlistentry>
304
305 </variablelist>
306
307 </sect2>
308
309</sect1>
Note: See TracBrowser for help on using the repository browser.