source: postlfs/security/gnutls.xml@ acd647b

10.0 10.1 11.0 11.1 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind lazarus perl-modules qt5new trunk upgradedb xry111/intltool xry111/test-20220226
Last change on this file since acd647b was acd647b, checked in by Bruce Dubbs <bdubbs@…>, 5 years ago

Update to thunderbird-45.8.0.
Update to vala-0.34.6.
Fix a typo.

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

  • Property mode set to 100644
File size: 12.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 gnutls-download-http "https://www.gnupg.org/ftp/gcrypt/gnutls/v3.5/gnutls-&gnutls-version;.tar.xz">
8 <!ENTITY gnutls-download-ftp "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.5/gnutls-&gnutls-version;.tar.xz">
9 <!ENTITY gnutls-md5sum "336c03a71ba90184ffd0388075dde504">
10 <!ENTITY gnutls-size "6.9 MB">
11 <!ENTITY gnutls-buildsize "123 MB (add 41 MB for tests)">
12 <!ENTITY gnutls-time "1.4 SBU (add 8.1 SBU for tests)">
13]>
14
15<sect1 id="gnutls" xreflabel="GnuTLS-&gnutls-version;">
16 <?dbhtml filename="gnutls.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>GnuTLS-&gnutls-version;</title>
24
25 <indexterm zone="gnutls">
26 <primary sortas="a-GnuTLS">GnuTLS</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to GnuTLS</title>
31
32 <para>
33 The <application>GnuTLS</application> package contains libraries and
34 userspace tools which provide a secure layer over a reliable transport
35 layer. Currently the <application>GnuTLS</application> library implements
36 the proposed standards by the IETF's TLS working group. Quoting from the
37 TLS protocol specification:
38 </para>
39
40 <para>
41 <quote>The TLS protocol provides communications privacy over the
42 Internet. The protocol allows client/server applications to communicate in
43 a way that is designed to prevent eavesdropping, tampering, or message
44 forgery.</quote>
45 </para>
46
47 <para>
48 <application>GnuTLS</application> provides support for TLS 1.2, TLS 1.1,
49 TLS 1.0, and SSL 3.0 protocols, TLS extensions, including server name and max
50 record size. Additionally, the library supports authentication using the
51 SRP protocol, X.509 certificates and OpenPGP keys, along with support for
52 the TLS Pre-Shared-Keys (PSK) extension, the Inner Application (TLS/IA)
53 extension and X.509 and OpenPGP certificate handling.
54 </para>
55
56 &lfs80_checked;
57
58 <bridgehead renderas="sect3">Package Information</bridgehead>
59 <itemizedlist spacing="compact">
60 <listitem>
61 <para>
62 Download (HTTP): <ulink url="&gnutls-download-http;"/>
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Download (FTP): <ulink url="&gnutls-download-ftp;"/>
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Download MD5 sum: &gnutls-md5sum;
73 </para>
74 </listitem>
75 <listitem>
76 <para>
77 Download size: &gnutls-size;
78 </para>
79 </listitem>
80 <listitem>
81 <para>
82 Estimated disk space required: &gnutls-buildsize;
83 </para>
84 </listitem>
85 <listitem>
86 <para>
87 Estimated build time: &gnutls-time;
88 </para>
89 </listitem>
90 </itemizedlist>
91
92 <bridgehead renderas="sect3">GnuTLS Dependencies</bridgehead>
93
94 <bridgehead renderas="sect4">Required</bridgehead>
95 <para role="required">
96 <xref linkend="nettle"/>
97 </para>
98
99 <bridgehead renderas="sect4">Recommended</bridgehead>
100 <para role="recommended">
101 <xref linkend="cacerts"/>,
102 <xref linkend="libunistring"/>,
103 <xref linkend="libtasn1"/>, and
104 <xref linkend="p11-kit"/>
105 </para>
106
107 <bridgehead renderas="sect4">Optional</bridgehead>
108 <para role="optional">
109 <xref linkend="doxygen"/>,
110 <xref linkend="gtk-doc"/>,
111 <xref linkend="guile"/>,
112 <xref linkend="libidn"/>,
113 <xref linkend="net-tools"/> (used during the test suite),
114 <xref linkend="texlive"/> or <xref linkend="tl-installer"/>,
115 <xref linkend="unbound"/> (to build the DANE library),
116 <xref linkend="valgrind"/> (used during the test suite),
117 <ulink url="http://ftp.gnu.org/gnu/autogen/">autogen</ulink>,
118 <ulink url="https://cmocka.org/">cmocka</ulink>,
119 <ulink url="http://ftp.debian.org/debian/pool/main/d/datefudge/">datefudge</ulink> (used during the test suite), and
120 <ulink url="http://sourceforge.net/projects/trousers/files/trousers/">Trousers</ulink> (Trusted Platform Module support)
121 </para>
122
123 <note><para>
124 Note that if you do not install <xref linkend="libtasn1"/>, an older
125 version shipped in the <application>GnuTLS</application> tarball will be
126 used instead.
127 </para></note>
128
129 <para condition="html" role="usernotes">User Notes:
130 <ulink url="&blfs-wiki;/gnutls"/>
131 </para>
132 </sect2>
133
134 <sect2 role="installation">
135 <title>Installation of GnuTLS</title>
136
137 <para>
138 Install <application>GnuTLS</application> by running the
139 following commands:
140 </para>
141
142<screen><userinput>./configure --prefix=/usr \
143 --with-default-trust-store-file=/etc/ssl/ca-bundle.crt &amp;&amp;
144make</userinput></screen>
145
146 <para>
147 To test the results, issue: <command>make check</command>. If a prior
148 version of <application>GnuTLS</application> (or the same version but
149 without all of the recommended dependencies) has been installed, some
150 tests may fail. If <filename>/usr/lib/libgnutls.so</filename> and the
151 target of that symlink are moved or renamed so that they cannot be found,
152 all tests should pass and the install procedure will restore
153 <filename>libgnutls.so</filename> and the versioned library it points to.
154 </para>
155
156 <para>
157 Now, as the <systemitem class="username">root</systemitem>
158 user:
159 </para>
160
161<screen role="root"><userinput>make install</userinput></screen>
162
163 <para>
164 If you passed the <option>--enable-gtk-doc</option> parameter to
165 the <command>configure</command> script, you can install the API
166 documentation to the <filename
167 class="directory">/usr/share/gtk-doc/html/gnutls</filename> directory
168 using the following command as the
169 <systemitem class="username">root</systemitem> user:
170 </para>
171
172<screen role="root"><userinput>make -C doc/reference install-data-local</userinput></screen>
173
174 </sect2>
175
176 <sect2 role="commands">
177 <title>Command Explanations</title>
178
179 <para>
180 <parameter>--with-default-trust-store-file=/etc/ssl/ca-bundle.crt</parameter>:
181 This switch tells <command>configure</command> where to find the
182 CA Certificates.
183 </para>
184
185 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
186 href="../../xincludes/gtk-doc-rebuild.xml"/>
187
188 <para>
189 <option>--enable-openssl-compatibility</option>:
190 Use this switch if you wish to build the OpenSSL compatibility library.
191 </para>
192
193 <para>
194 <option>--without-p11-kit</option>: use this switch if you have not
195 installed <application>p11-kit</application>.
196 </para>
197
198 <para>
199 <option>--with-included-unistring</option>: uses the bundled version of
200 libunistring, instead of the system one. Use this switch if you have not
201 installed <xref linkend="libunistring"/>.
202 </para>
203
204 </sect2>
205
206 <sect2 role="content">
207 <title>Contents</title>
208
209 <segmentedlist>
210 <segtitle>Installed Programs</segtitle>
211 <segtitle>Installed Libraries</segtitle>
212 <segtitle>Installed Directories</segtitle>
213
214 <seglistitem>
215 <seg>
216 certtool, danetool, gnutls-cli, gnutls-cli-debug,
217 gnutls-serv, ocsptool, p11tool, psktool, and srptool
218 </seg>
219 <seg>
220 libgnutls.so, libgnutls-dane.so, libgnutlsxx.so,
221 libgnutls-openssl.so, and
222 /usr/lib/guile/2.0/guile-gnutls-v-2.so
223 </seg>
224 <seg>
225 /usr/{include,share/gtk-doc/html,share/guile/site/2.0}/gnutls
226 </seg>
227 </seglistitem>
228 </segmentedlist>
229
230 <variablelist>
231 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
232 <?dbfo list-presentation="list"?>
233 <?dbhtml list-presentation="table"?>
234
235 <varlistentry id="certtool">
236 <term><command>certtool</command></term>
237 <listitem>
238 <para>
239 is used to generate X.509 certificates, certificate requests,
240 and private keys.
241 </para>
242 <indexterm zone="gnutls certtool">
243 <primary sortas="b-certtool">certtool</primary>
244 </indexterm>
245 </listitem>
246 </varlistentry>
247<!--
248 Removed after 3.5.0 according to the NEWS file.
249 <varlistentry id="crywrap">
250 <term><command>crywrap</command></term>
251 <listitem>
252 <para>
253 is a simple wrapper that waits for TLS/SSL connections,
254 and proxies them to an unencrypted location. Only installed if
255 <xref linkend="libidn"/> is present.
256 </para>
257 <indexterm zone="gnutls crywrap">
258 <primary sortas="b-crywrap">crywrap</primary>
259 </indexterm>
260 </listitem>
261 </varlistentry>
262-->
263
264 <varlistentry id="danetool">
265 <term><command>danetool</command></term>
266 <listitem>
267 <para>
268 is a tool used to generate and check DNS resource records
269 for the DANE protocol.
270 </para>
271 <indexterm zone="gnutls danetool">
272 <primary sortas="b-danetool">danetool</primary>
273 </indexterm>
274 </listitem>
275 </varlistentry>
276
277 <varlistentry id="gnutls-cli">
278 <term><command>gnutls-cli</command></term>
279 <listitem>
280 <para>
281 is a simple client program to set up a TLS connection to some
282 other computer.
283 </para>
284 <indexterm zone="gnutls gnutls-cli">
285 <primary sortas="b-gnutls-cli">gnutls-cli</primary>
286 </indexterm>
287 </listitem>
288 </varlistentry>
289
290 <varlistentry id="gnutls-cli-debug">
291 <term><command>gnutls-cli-debug</command></term>
292 <listitem>
293 <para>
294 is a simple client program to set up a TLS connection to some
295 other computer and produces very verbose progress results.
296 </para>
297 <indexterm zone="gnutls gnutls-cli-debug">
298 <primary sortas="b-gnutls-cli-debug">gnutls-cli-debug</primary>
299 </indexterm>
300 </listitem>
301 </varlistentry>
302
303 <varlistentry id="gnutls-serv">
304 <term><command>gnutls-serv</command></term>
305 <listitem>
306 <para>
307 is a simple server program that listens to incoming TLS
308 connections.
309 </para>
310 <indexterm zone="gnutls gnutls-serv">
311 <primary sortas="b-gnutls-serv">gnutls-serv</primary>
312 </indexterm>
313 </listitem>
314 </varlistentry>
315
316 <varlistentry id="ocsptool">
317 <term><command>ocsptool</command></term>
318 <listitem>
319 <para>
320 is a program that can parse and print information about OCSP
321 requests/responses, generate requests and verify responses.
322 </para>
323 <indexterm zone="gnutls ocsptool">
324 <primary sortas="b-ocsptool">ocsptool</primary>
325 </indexterm>
326 </listitem>
327 </varlistentry>
328
329 <varlistentry id="p11tool">
330 <term><command>p11tool</command></term>
331 <listitem>
332 <para>
333 is a program that allows handling data from PKCS #11 smart cards
334 and security modules.
335 </para>
336 <indexterm zone="gnutls p11tool">
337 <primary sortas="b-p11tool">p11tool</primary>
338 </indexterm>
339 </listitem>
340 </varlistentry>
341
342 <varlistentry id="psktool">
343 <term><command>psktool</command></term>
344 <listitem>
345 <para>
346 is a simple program that generates random keys for use with TLS-PSK.
347 </para>
348 <indexterm zone="gnutls psktool">
349 <primary sortas="b-psktool">psktool</primary>
350 </indexterm>
351 </listitem>
352 </varlistentry>
353
354 <varlistentry id="srptool">
355 <term><command>srptool</command></term>
356 <listitem>
357 <para>
358 is a simple program that emulates the programs in the Stanford
359 SRP (Secure Remote Password) libraries using GnuTLS.
360 </para>
361 <indexterm zone="gnutls srptool">
362 <primary sortas="b-srptool">srptool</primary>
363 </indexterm>
364 </listitem>
365 </varlistentry>
366
367 <varlistentry id="libgnutls">
368 <term><filename class="libraryfile">libgnutls.so</filename></term>
369 <listitem>
370 <para>
371 contains the core API functions and X.509 certificate API functions.
372 </para>
373 <indexterm zone="gnutls libgnutls">
374 <primary sortas="c-libgnutls">libgnutls.so</primary>
375 </indexterm>
376 </listitem>
377 </varlistentry>
378
379 </variablelist>
380
381 </sect2>
382
383</sect1>
Note: See TracBrowser for help on using the repository browser.