source: postlfs/security/gnutls.xml@ e764ee3

10.0 10.1 11.0 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind ken/refactor-virt lazarus nosym perl-modules qt5new trunk upgradedb xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since e764ee3 was e764ee3, checked in by Bruce Dubbs <bdubbs@…>, 5 years ago

Update to stunnel-5.37.
Update to sysstat-11.5.2.
Update to gnutls-3.5.6.
Update to scons-2.5.1.
Update to feh-2.18.

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

  • Property mode set to 100644
File size: 12.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 <!ENTITY gnutls-download-http " ">
8 <!ENTITY gnutls-download-ftp "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.5/gnutls-&gnutls-version;.tar.xz">
9 <!ENTITY gnutls-md5sum "7a38b23757aae009c3eb5bb12fb0afda">
10 <!ENTITY gnutls-size "6.8 MB">
11 <!ENTITY gnutls-buildsize "119 MB (add 40 MB for tests)">
12 <!ENTITY gnutls-time "1.5 SBU (add 8.4 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 &lfs7a_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="libtasn1"/> and
103 <xref linkend="p11-kit"/>
104 </para>
105
106 <bridgehead renderas="sect4">Optional</bridgehead>
107 <para role="optional">
108 <xref linkend="doxygen"/>,
109 <xref linkend="gtk-doc"/>,
110 <xref linkend="guile"/>,
111 <xref linkend="libidn"/>,
112 <xref linkend="net-tools"/> (used during the test suite),
113 <xref linkend="texlive"/> or <xref linkend="tl-installer"/>,
114 <xref linkend="unbound"/> (to build the DANE library),
115 <xref linkend="valgrind"/> (used during the test suite),
116 <ulink url="http://ftp.gnu.org/gnu/autogen/">autogen</ulink>,
117 <ulink url="https://cmocka.org/">cmocka</ulink>,
118 <ulink url="http://ftp.debian.org/debian/pool/main/d/datefudge/">datefudge</ulink> (used during the test suite), and
119 <ulink url="http://sourceforge.net/projects/trousers/files/trousers/">Trousers</ulink> (Trusted Platform Module support)
120 </para>
121
122 <note><para>
123 Note that if you do not install <xref linkend="libtasn1"/>, an older
124 version shipped in the <application>GnuTLS</application> tarball will be
125 used instead.
126 </para></note>
127
128 <para condition="html" role="usernotes">User Notes:
129 <ulink url="&blfs-wiki;/gnutls"/>
130 </para>
131 </sect2>
132
133 <sect2 role="installation">
134 <title>Installation of GnuTLS</title>
135
136 <para>
137 Install <application>GnuTLS</application> by running the
138 following commands:
139 </para>
140
141<screen><userinput>./configure --prefix=/usr \
142 --with-default-trust-store-file=/etc/ssl/ca-bundle.crt &amp;&amp;
143make</userinput></screen>
144
145 <para>
146 To test the results, issue: <command>make check</command>. If a prior
147 version of <application>GnuTLS</application> (or the same version but
148 without all of the recommended dependencies) has been installed, some
149 tests may fail. If <filename>/usr/lib/libgnutls.so</filename> and the
150 target of that symlink are moved or renamed so that they cannot be found,
151 all tests should pass and the install procedure will restore
152 <filename>libgnutls.so</filename> and the versioned library it points to.
153 </para>
154
155 <para>
156 Now, as the <systemitem class="username">root</systemitem>
157 user:
158 </para>
159
160<screen role="root"><userinput>make install</userinput></screen>
161
162 <para>
163 If you did not pass the <option>--enable-gtk-doc</option> parameter to
164 the <command>configure</command> script, you can install the API
165 documentation to the <filename
166 class="directory">/usr/share/gtk-doc/html/gnutls</filename> directory
167 using the following command as the
168 <systemitem class="username">root</systemitem> user:
169 </para>
170
171<screen role="root"><userinput>make -C doc/reference install-data-local</userinput></screen>
172
173 </sect2>
174
175 <sect2 role="commands">
176 <title>Command Explanations</title>
177
178 <para>
179 <parameter>--with-default-trust-store-file=/etc/ssl/ca-bundle.crt</parameter>:
180 This switch tells <command>configure</command> where to find the
181 CA Certificates.
182 </para>
183
184 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
185 href="../../xincludes/gtk-doc-rebuild.xml"/>
186
187 <para>
188 <option>--enable-openssl-compatibility</option>:
189 Use this switch if you wish to build the OpenSSL compatibility library.
190 </para>
191
192 <para>
193 <option>--without-p11-kit</option>: use this switch if you have not
194 installed <application>p11-kit</application>.
195 </para>
196
197 </sect2>
198
199 <sect2 role="content">
200 <title>Contents</title>
201
202 <segmentedlist>
203 <segtitle>Installed Programs</segtitle>
204 <segtitle>Installed Libraries</segtitle>
205 <segtitle>Installed Directories</segtitle>
206
207 <seglistitem>
208 <seg>
209 certtool, danetool, gnutls-cli, gnutls-cli-debug,
210 gnutls-serv, ocsptool, p11tool, psktool, and srptool
211 </seg>
212 <seg>
213 libgnutls.so, libgnutls-dane.so, libgnutlsxx.so,
214 libgnutls-openssl.so, and
215 /usr/lib/guile/2.0/guile-gnutls-v-2.so
216 </seg>
217 <seg>
218 /usr/{include,share/gtk-doc/html,share/guile/site/2.0}/gnutls
219 </seg>
220 </seglistitem>
221 </segmentedlist>
222
223 <variablelist>
224 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
225 <?dbfo list-presentation="list"?>
226 <?dbhtml list-presentation="table"?>
227
228 <varlistentry id="certtool">
229 <term><command>certtool</command></term>
230 <listitem>
231 <para>
232 is used to generate X.509 certificates, certificate requests,
233 and private keys.
234 </para>
235 <indexterm zone="gnutls certtool">
236 <primary sortas="b-certtool">certtool</primary>
237 </indexterm>
238 </listitem>
239 </varlistentry>
240<!--
241 Removed after 3.5.0 according to the NEWS file.
242 <varlistentry id="crywrap">
243 <term><command>crywrap</command></term>
244 <listitem>
245 <para>
246 is a simple wrapper that waits for TLS/SSL connections,
247 and proxies them to an unencrypted location. Only installed if
248 <xref linkend="libidn"/> is present.
249 </para>
250 <indexterm zone="gnutls crywrap">
251 <primary sortas="b-crywrap">crywrap</primary>
252 </indexterm>
253 </listitem>
254 </varlistentry>
255-->
256
257 <varlistentry id="danetool">
258 <term><command>danetool</command></term>
259 <listitem>
260 <para>
261 is a tool used to generate and check DNS resource records
262 for the DANE protocol.
263 </para>
264 <indexterm zone="gnutls danetool">
265 <primary sortas="b-danetool">danetool</primary>
266 </indexterm>
267 </listitem>
268 </varlistentry>
269
270 <varlistentry id="gnutls-cli">
271 <term><command>gnutls-cli</command></term>
272 <listitem>
273 <para>
274 is a simple client program to set up a TLS connection to some
275 other computer.
276 </para>
277 <indexterm zone="gnutls gnutls-cli">
278 <primary sortas="b-gnutls-cli">gnutls-cli</primary>
279 </indexterm>
280 </listitem>
281 </varlistentry>
282
283 <varlistentry id="gnutls-cli-debug">
284 <term><command>gnutls-cli-debug</command></term>
285 <listitem>
286 <para>
287 is a simple client program to set up a TLS connection to some
288 other computer and produces very verbose progress results.
289 </para>
290 <indexterm zone="gnutls gnutls-cli-debug">
291 <primary sortas="b-gnutls-cli-debug">gnutls-cli-debug</primary>
292 </indexterm>
293 </listitem>
294 </varlistentry>
295
296 <varlistentry id="gnutls-serv">
297 <term><command>gnutls-serv</command></term>
298 <listitem>
299 <para>
300 is a simple server program that listens to incoming TLS
301 connections.
302 </para>
303 <indexterm zone="gnutls gnutls-serv">
304 <primary sortas="b-gnutls-serv">gnutls-serv</primary>
305 </indexterm>
306 </listitem>
307 </varlistentry>
308
309 <varlistentry id="ocsptool">
310 <term><command>ocsptool</command></term>
311 <listitem>
312 <para>
313 is a program that can parse and print information about OCSP
314 requests/responses, generate requests and verify responses.
315 </para>
316 <indexterm zone="gnutls ocsptool">
317 <primary sortas="b-ocsptool">ocsptool</primary>
318 </indexterm>
319 </listitem>
320 </varlistentry>
321
322 <varlistentry id="p11tool">
323 <term><command>p11tool</command></term>
324 <listitem>
325 <para>
326 is a program that allows handling data from PKCS #11 smart cards
327 and security modules.
328 </para>
329 <indexterm zone="gnutls p11tool">
330 <primary sortas="b-p11tool">p11tool</primary>
331 </indexterm>
332 </listitem>
333 </varlistentry>
334
335 <varlistentry id="psktool">
336 <term><command>psktool</command></term>
337 <listitem>
338 <para>
339 is a simple program that generates random keys for use with TLS-PSK.
340 </para>
341 <indexterm zone="gnutls psktool">
342 <primary sortas="b-psktool">psktool</primary>
343 </indexterm>
344 </listitem>
345 </varlistentry>
346
347 <varlistentry id="srptool">
348 <term><command>srptool</command></term>
349 <listitem>
350 <para>
351 is a simple program that emulates the programs in the Stanford
352 SRP (Secure Remote Password) libraries using GnuTLS.
353 </para>
354 <indexterm zone="gnutls srptool">
355 <primary sortas="b-srptool">srptool</primary>
356 </indexterm>
357 </listitem>
358 </varlistentry>
359
360 <varlistentry id="libgnutls">
361 <term><filename class="libraryfile">libgnutls.so</filename></term>
362 <listitem>
363 <para>
364 contains the core API functions and X.509 certificate API functions.
365 </para>
366 <indexterm zone="gnutls libgnutls">
367 <primary sortas="c-libgnutls">libgnutls.so</primary>
368 </indexterm>
369 </listitem>
370 </varlistentry>
371
372 </variablelist>
373
374 </sect2>
375
376</sect1>
Note: See TracBrowser for help on using the repository browser.