source: chapter08/openssl.xml@ 70aadfb

ml-11.0 multilib
Last change on this file since 70aadfb was 70aadfb, checked in by Thomas Trepl (Moody) <thomas@…>, 13 months ago

Cosmetic rearrange options to appear more consistent

  • Property mode set to 100644
File size: 8.3 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 --openssldir=/etc/ssl \
120 --libdir=lib32 \
121 shared \
122 zlib-dynamic</userinput></screen>
123
124 <para>Compile the package:</para>
125
126<screen><userinput remap="make">make</userinput></screen>
127
128 <para>Install the package:</para>
129
130<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
131cp -Rv DESTDIR/usr/lib32/* /usr/lib32
132rm -rf DESTDIR</userinput></screen>
133
134 </sect2><!-- m32 -->
135
136 <!-- - - - - - - - - - -->
137 <!-- Multilib - x32bit -->
138 <!-- - - - - - - - - - -->
139
140 <sect2 arch="ml_x32,ml_all" role="installation">
141 <title>Installation of OpenSSL - x32bit</title>
142
143 <para>Clean previous build:</para>
144
145<screen><userinput remap="pre">make distclean</userinput></screen>
146
147 <para>Prepare OpenSSL for compilation:</para>
148
149<screen><userinput remap="configure">MACHINE="x86_64" \
150CC="gcc -mx32" \
151CXX="g++ -mx32" \
152 ./config \
153 --prefix=/usr \
154 --openssldir=/etc/ssl \
155 --libdir=libx32 \
156 shared \
157 zlib-dynamic</userinput></screen>
158
159 <para>Compile the package:</para>
160
161<screen><userinput remap="make">make</userinput></screen>
162
163 <para>Install the package:</para>
164
165<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
166cp -Rv DESTDIR/usr/libx32/* /usr/libx32
167rm -rf DESTDIR</userinput></screen>
168
169 </sect2><!-- mx32 -->
170
171 <sect2 id="contents-openssl" role="content">
172 <title>Contents of OpenSSL</title>
173
174 <segmentedlist>
175 <segtitle>Installed programs</segtitle>
176 <segtitle>Installed libraries</segtitle>
177 <segtitle>Installed directories</segtitle>
178
179 <seglistitem>
180 <seg>
181 c_rehash and openssl
182 </seg>
183 <seg>
184 libcrypto.so and libssl.so
185 </seg>
186 <seg>
187 /etc/ssl,
188 /usr/include/openssl,
189 /usr/lib/engines and
190 /usr/share/doc/openssl-&openssl-version;
191 </seg>
192 </seglistitem>
193 </segmentedlist>
194
195 <variablelist>
196 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
197 <?dbfo list-presentation="list"?>
198 <?dbhtml list-presentation="table"?>
199
200 <varlistentry id="c_rehash">
201 <term><command>c_rehash</command></term>
202 <listitem>
203 <para>
204 is a <application>Perl</application> script that scans all files in
205 a directory and adds symbolic links to their hash values
206 </para>
207 <indexterm zone="ch-system-openssl c_rehash">
208 <primary sortas="b-c_rehash">c_rehash</primary>
209 </indexterm>
210 </listitem>
211 </varlistentry>
212
213 <varlistentry id="openssl-prog">
214 <term><command>openssl</command></term>
215 <listitem>
216 <para>
217 is a command-line tool for using the various cryptography functions
218 of <application>OpenSSL</application>'s crypto library from the
219 shell. It can be used for various functions which are documented in
220 <command>man 1 openssl</command>
221 </para>
222 <indexterm zone="ch-system-openssl openssl-prog">
223 <primary sortas="b-openssl">openssl</primary>
224 </indexterm>
225 </listitem>
226 </varlistentry>
227
228 <varlistentry id="libcrypto">
229 <term><filename class="libraryfile">libcrypto.so</filename></term>
230 <listitem>
231 <para>
232 implements a wide range of cryptographic algorithms used in various
233 Internet standards. The services provided by this library are used
234 by the <application>OpenSSL</application> implementations of SSL,
235 TLS and S/MIME, and they have also been used to implement
236 <application>OpenSSH</application>,
237 <application>OpenPGP</application>, and other cryptographic
238 standards
239 </para>
240 <indexterm zone="ch-system-openssl libcrypto">
241 <primary sortas="c-libcrypto">libcrypto.so</primary>
242 </indexterm>
243 </listitem>
244 </varlistentry>
245
246 <varlistentry id="libssl">
247 <term><filename class="libraryfile">libssl.so</filename></term>
248 <listitem>
249 <para>
250 implements the Transport Layer Security (TLS v1) protocol.
251 It provides a rich API, documentation
252 on which can be found by running <command>man 3 ssl</command>
253 </para>
254 <indexterm zone="ch-system-openssl libssl">
255 <primary sortas="c-libssl">libssl.so</primary>
256 </indexterm>
257 </listitem>
258 </varlistentry>
259
260 </variablelist>
261
262 </sect2>
263
264</sect1>
Note: See TracBrowser for help on using the repository browser.