source: chapter08/openssl.xml@ 76531f2

ml-11.0 multilib
Last change on this file since 76531f2 was 30fb4c0, checked in by Thomas Trepl (Moody) <thomas@…>, 3 years ago

Automatic merge of trunk into multilib

  • Property mode set to 100644
File size: 8.4 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
8<sect1 id="ch-system-openssl" role="wrap">
9 <?dbhtml filename="openssl.html"?>
10
11 <sect1info condition="script">
12 <productname>openssl</productname>
13 <productnumber>&openssl-version;</productnumber>
14 <address>&openssl-url;</address>
15 </sect1info>
16
17 <title>OpenSSL-&openssl-version;</title>
18
19 <indexterm zone="ch-system-openssl">
20 <primary sortas="a-OpenSSL">OpenSSL</primary>
21 </indexterm>
22
23 <sect2 role="package">
24 <title/>
25
26 <para>The OpenSSL package contains management tools and libraries relating
27 to cryptography. These are useful for providing cryptographic functions
28 to other packages, such as OpenSSH, email applications, and web browsers
29 (for accessing HTTPS sites). </para>
30
31 <segmentedlist>
32 <segtitle>&buildtime;</segtitle>
33 <segtitle>&diskspace;</segtitle>
34
35 <seglistitem>
36 <seg>&openssl-fin-sbu;</seg>
37 <seg>&openssl-fin-du;</seg>
38 </seglistitem>
39 </segmentedlist>
40
41 </sect2>
42
43 <sect2 role="installation">
44 <title>Installation of OpenSSL</title>
45
46 <para>Prepare OpenSSL for compilation:</para>
47
48<screen><userinput remap="configure">./config --prefix=/usr \
49 --openssldir=/etc/ssl \
50 --libdir=lib \
51 shared \
52 zlib-dynamic</userinput></screen>
53
54 <para>Compile the package:</para>
55
56<screen><userinput remap="make">make</userinput></screen>
57
58 <para>To test the results, issue:</para>
59
60<screen><userinput remap="test">make test</userinput></screen>
61
62 <para>One test 30-test_afalg.t is known to fail on some kernel
63 configurations (it apparently assumes certain unspecified crypto
64 options have been selected).</para>
65
66 <para>Install the package:</para>
67
68<screen><userinput remap="install">sed -i '/INSTALL_LIBS/s/libcrypto.a libssl.a//' Makefile
69make MANSUFFIX=ssl install</userinput></screen>
70
71 <para>Add the version to the documentation directory name, to be
72 consistent with other packages:</para>
73
74<screen><userinput remap="install">mv -v /usr/share/doc/openssl /usr/share/doc/openssl-&openssl-version;</userinput></screen>
75
76 <para>If desired, install some additional documentation:</para>
77
78<screen><userinput remap="install">cp -vfr doc/* /usr/share/doc/openssl-&openssl-version;</userinput></screen>
79
80 <note>
81 <para>
82 You should update OpenSSL when a new version which fixes vulnerabilities
83 is announced. The releases run in series, with a letter for each release
84 after the initial release (e.g. 1.1.1, 1.1.1a, 1.1.1b, etc). Because LFS
85 installs only the shared libraries, there is no need to recompile packages
86 which link to <filename class="libraryfile">libcrypto.so</filename> or
87 <filename class="libraryfile">libssl.so</filename>
88 <emphasis>when upgrading in the same series.</emphasis>
89 </para>
90
91 <para>
92 However, any running programs linked to those libraries need to be stopped
93 and restarted. Read the related entries in
94 <xref linkend='pkgmgmt-upgrade-issues'/> for details.
95 </para>
96
97 </note>
98
99 </sect2>
100
101 <!-- - - - - - - - - - -->
102 <!-- Multilib - 32bit -->
103 <!-- - - - - - - - - - -->
104
105 <sect2 arch="ml_32,ml_all" role="installation">
106 <title>Installation of OpenSSL - 32bit</title>
107
108 <para>Clean previous build:</para>
109
110<screen><userinput remap="pre">make distclean</userinput></screen>
111
112 <para>Prepare OpenSSL for compilation:</para>
113
114<screen><userinput remap="configure">MACHINE="i686" \
115CC="gcc -m32 -march=i686" \
116CXX="g++ -m32 -march=i686" \
117 ./config \
118 --prefix=/usr \
119 --libdir=/usr/lib32 \
120 --openssldir=/etc/ssl \
121 --libdir=lib32 \
122 shared \
123 zlib-dynamic</userinput></screen>
124
125 <para>Compile the package:</para>
126
127<screen><userinput remap="make">make</userinput></screen>
128
129 <para>Install the package:</para>
130
131<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
132cp -Rv DESTDIR/usr/lib32/* /usr/lib32
133rm -rf DESTDIR</userinput></screen>
134
135 </sect2><!-- m32 -->
136
137 <!-- - - - - - - - - - -->
138 <!-- Multilib - x32bit -->
139 <!-- - - - - - - - - - -->
140
141 <sect2 arch="ml_x32,ml_all" role="installation">
142 <title>Installation of OpenSSL - x32bit</title>
143
144 <para>Clean previous build:</para>
145
146<screen><userinput remap="pre">make distclean</userinput></screen>
147
148 <para>Prepare OpenSSL for compilation:</para>
149
150<screen><userinput remap="configure">MACHINE="x86_64" \
151CC="gcc -mx32" \
152CXX="g++ -mx32" \
153 ./config \
154 --prefix=/usr \
155 --libdir=/usr/libx32 \
156 --openssldir=/etc/ssl \
157 --libdir=libx32 \
158 shared \
159 zlib-dynamic</userinput></screen>
160
161 <para>Compile the package:</para>
162
163<screen><userinput remap="make">make</userinput></screen>
164
165 <para>Install the package:</para>
166
167<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
168cp -Rv DESTDIR/usr/libx32/* /usr/libx32
169rm -rf DESTDIR</userinput></screen>
170
171 </sect2><!-- mx32 -->
172
173 <sect2 id="contents-openssl" role="content">
174 <title>Contents of OpenSSL</title>
175
176 <segmentedlist>
177 <segtitle>Installed programs</segtitle>
178 <segtitle>Installed libraries</segtitle>
179 <segtitle>Installed directories</segtitle>
180
181 <seglistitem>
182 <seg>
183 c_rehash and openssl
184 </seg>
185 <seg>
186 libcrypto.so and libssl.so
187 </seg>
188 <seg>
189 /etc/ssl,
190 /usr/include/openssl,
191 /usr/lib/engines and
192 /usr/share/doc/openssl-&openssl-version;
193 </seg>
194 </seglistitem>
195 </segmentedlist>
196
197 <variablelist>
198 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
199 <?dbfo list-presentation="list"?>
200 <?dbhtml list-presentation="table"?>
201
202 <varlistentry id="c_rehash">
203 <term><command>c_rehash</command></term>
204 <listitem>
205 <para>
206 is a <application>Perl</application> script that scans all files in
207 a directory and adds symbolic links to their hash values
208 </para>
209 <indexterm zone="ch-system-openssl c_rehash">
210 <primary sortas="b-c_rehash">c_rehash</primary>
211 </indexterm>
212 </listitem>
213 </varlistentry>
214
215 <varlistentry id="openssl-prog">
216 <term><command>openssl</command></term>
217 <listitem>
218 <para>
219 is a command-line tool for using the various cryptography functions
220 of <application>OpenSSL</application>'s crypto library from the
221 shell. It can be used for various functions which are documented in
222 <command>man 1 openssl</command>
223 </para>
224 <indexterm zone="ch-system-openssl openssl-prog">
225 <primary sortas="b-openssl">openssl</primary>
226 </indexterm>
227 </listitem>
228 </varlistentry>
229
230 <varlistentry id="libcrypto">
231 <term><filename class="libraryfile">libcrypto.so</filename></term>
232 <listitem>
233 <para>
234 implements a wide range of cryptographic algorithms used in various
235 Internet standards. The services provided by this library are used
236 by the <application>OpenSSL</application> implementations of SSL,
237 TLS and S/MIME, and they have also been used to implement
238 <application>OpenSSH</application>,
239 <application>OpenPGP</application>, and other cryptographic
240 standards
241 </para>
242 <indexterm zone="ch-system-openssl libcrypto">
243 <primary sortas="c-libcrypto">libcrypto.so</primary>
244 </indexterm>
245 </listitem>
246 </varlistentry>
247
248 <varlistentry id="libssl">
249 <term><filename class="libraryfile">libssl.so</filename></term>
250 <listitem>
251 <para>
252 implements the Transport Layer Security (TLS v1) protocol.
253 It provides a rich API, documentation
254 on which can be found by running <command>man 3 ssl</command>
255 </para>
256 <indexterm zone="ch-system-openssl libssl">
257 <primary sortas="c-libssl">libssl.so</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.