source: postlfs/security/gnutls.xml@ 8f79d9f5

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 12.2 7.10 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gimp3 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/for-12.3 xry111/intltool xry111/llvm18 xry111/soup3 xry111/spidermonkey128 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 8f79d9f5 was b9abcb5, checked in by Fernando de Oliveira <fernando@…>, 9 years ago

Update to p11-kit-0.23.1.
Update to nettle-3.1.1.
Update to gnutls-3.4.0.
emacs-24.5: code broken with gnutls-3.4 and later.
samba-4.2.1: fix some code when building with gnutls-3.4 and later.
neon-0.30.1: fix some code when building with gnutls-3.4 and later.

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

  • Property mode set to 100644
File size: 11.9 KB
RevLine 
[d5404360]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
[d835b55]7 <!ENTITY gnutls-download-http " ">
[b9abcb5]8 <!ENTITY gnutls-download-ftp "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.4/gnutls-&gnutls-version;.tar.xz">
9 <!ENTITY gnutls-md5sum "aa015c2666b031044edfb01b01980d84">
10 <!ENTITY gnutls-size "6.2 MB">
11 <!ENTITY gnutls-buildsize "124 MB (with built in API documentation; additional 15 MB for tests)">
12 <!ENTITY gnutls-time "0.8 SBU (additional 2.6 SBU for tests)">
[d5404360]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
[3ee626e]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>
[8b830d32]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
[3ee626e]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>
[d5404360]55
[163bbac]56 &lfs77_checked;
[214718a]57
[d5404360]58 <bridgehead renderas="sect3">Package Information</bridgehead>
59 <itemizedlist spacing="compact">
[546b042]60 <listitem>
[3ee626e]61 <para>
62 Download (HTTP): <ulink url="&gnutls-download-http;"/>
63 </para>
[546b042]64 </listitem>
[d5404360]65 <listitem>
[3ee626e]66 <para>
67 Download (FTP): <ulink url="&gnutls-download-ftp;"/>
68 </para>
[d5404360]69 </listitem>
70 <listitem>
[3ee626e]71 <para>
72 Download MD5 sum: &gnutls-md5sum;
73 </para>
[d5404360]74 </listitem>
75 <listitem>
[3ee626e]76 <para>
77 Download size: &gnutls-size;
78 </para>
[d5404360]79 </listitem>
80 <listitem>
[3ee626e]81 <para>
82 Estimated disk space required: &gnutls-buildsize;
83 </para>
[d5404360]84 </listitem>
85 <listitem>
[3ee626e]86 <para>
87 Estimated build time: &gnutls-time;
88 </para>
[d5404360]89 </listitem>
90 </itemizedlist>
91
92 <bridgehead renderas="sect3">GnuTLS Dependencies</bridgehead>
93
94 <bridgehead renderas="sect4">Required</bridgehead>
[3ee626e]95 <para role="required">
96 <xref linkend="nettle"/>
97 </para>
[d5404360]98
[5eaf9af8]99 <bridgehead renderas="sect4">Recommended</bridgehead>
100 <para role="recommended">
[4c39aff]101 <xref linkend="cacerts"/> and
[5eaf9af8]102 <xref linkend="libtasn1"/>
103 </para>
104
[d5404360]105 <bridgehead renderas="sect4">Optional</bridgehead>
[0c6c35d]106 <para role="optional">
[b9abcb5]107 <xref linkend="doxygen"/>,
[0c6c35d]108 <xref linkend="gtk-doc"/>,
[c202a254]109 <xref linkend="guile"/>,
[546b042]110 <xref linkend="libidn"/>,
[ba1be62]111 <xref linkend="p11-kit"/>,
[b9abcb5]112 <xref linkend="texlive"/> or <xref linkend="tl-installer"/>,
[ffa3d4e]113 <xref linkend="unbound"/> (to build the DANE library),
114 <xref linkend="valgrind"/> (used during the test suite),
115 <ulink url="http://ftp.gnu.org/gnu/autogen/">autogen</ulink>, and
116 <ulink url="http://sourceforge.net/projects/trousers/files/trousers/">Trousers</ulink> (Trusted Platform Module support)
[3ee626e]117 </para>
[d5404360]118
[d224244f]119 <note><para>
[3ee626e]120 Note that if you do not install <xref linkend="libtasn1"/>, an older
121 version shipped in the <application>GnuTLS</application> tarball will be
122 used instead.
[d224244f]123 </para></note>
[38b68055]124
[d5404360]125 <para condition="html" role="usernotes">User Notes:
[5eaf9af8]126 <ulink url="&blfs-wiki;/gnutls"/>
127 </para>
[d5404360]128 </sect2>
129
130 <sect2 role="installation">
131 <title>Installation of GnuTLS</title>
132
[3ee626e]133 <para>
134 Install <application>GnuTLS</application> by running the
135 following commands:
136 </para>
[d5404360]137
[b9abcb5]138<screen><userinput>sed -e '/FUNCS=/ s/-d/&amp;|uniq/' \
139 -e '/get_x509_crt/ {n;d}' \
140 -e '/get_x509_key/ {n;d}' \
141 -e '/get_verify_flags/ {n;d}' \
142 -i doc/manpages/Makefile &amp;&amp;
143
144./configure --prefix=/usr \
[4c39aff]145 --with-default-trust-store-file=/etc/ssl/ca-bundle.crt &amp;&amp;
[d5404360]146make</userinput></screen>
147
[3ee626e]148 <para>
[c202a254]149 To test the results, issue: <command>make check</command>.
[3ee626e]150 </para>
[d5404360]151
[3ee626e]152 <para>
153 Now, as the <systemitem class="username">root</systemitem>
154 user:
155 </para>
[d5404360]156
[73d97caf]157<screen role="root"><userinput>make install</userinput></screen>
[d5404360]158
[3ee626e]159 <para>
[b9abcb5]160 If you did not pass the <option>--enable-gtk-doc</option> parameter to
161 the <command>configure</command> script, you can install the API
162 documentation to the <filename
163 class="directory">/usr/share/gtk-doc/html/gnutls</filename> directory
164 using the following command as the
[3ee626e]165 <systemitem class="username">root</systemitem> user:
166 </para>
[2e81579]167
168<screen role="root"><userinput>make -C doc/reference install-data-local</userinput></screen>
169
[d5404360]170 </sect2>
171
[d309b21]172 <sect2 role="commands">
173 <title>Command Explanations</title>
174
[b9abcb5]175 <para>
176 <command>sed -e ... -i doc/manpages/Makefile</command>:
177 This command removes some duplicate lines and fixes the doc Makefile.
178 </para>
179
[4c39aff]180 <para>
181 <parameter>--with-default-trust-store-file=/etc/ssl/ca-bundle.crt</parameter>:
182 This switch tells <command>configure</command> where to find the
183 CA Certificates.
184 </para>
185
[e05cd03f]186 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
[5eaf9af8]187 href="../../xincludes/gtk-doc-rebuild.xml"/>
[d309b21]188
[b9abcb5]189 <para>
190 <option>--enable-openssl-compatibility</option>:
191 Use this switch if you wish building the OpenSSL compatibility library.
192 </para>
193
[d309b21]194 </sect2>
195
[d5404360]196 <sect2 role="content">
197 <title>Contents</title>
198
199 <segmentedlist>
200 <segtitle>Installed Programs</segtitle>
201 <segtitle>Installed Libraries</segtitle>
[32dfb13c]202 <segtitle>Installed Directories</segtitle>
[d5404360]203
204 <seglistitem>
[3ee626e]205 <seg>
[7b7e01c3]206 certtool, crywrap, danetool, gnutls-cli, gnutls-cli-debug,
[c202a254]207 gnutls-serv, ocsptool, p11tool, psktool, and srptool
[3ee626e]208 </seg>
209 <seg>
[c202a254]210 libgnutls.so, libgnutls-dane.so,
211 libgnutls-openssl.so, libgnutlsxx.so, and
212 /usr/lib/guile/2.0/guile-gnutls-v-2.so
[3ee626e]213 </seg>
214 <seg>
[c202a254]215 /usr/include/gnutls,
216 /usr/share/gtk-doc/html/gnutls, and
[1c345ed]217 /usr/share/guile/site/gnutls
[3ee626e]218 </seg>
[d5404360]219 </seglistitem>
220 </segmentedlist>
221
222 <variablelist>
223 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
224 <?dbfo list-presentation="list"?>
225 <?dbhtml list-presentation="table"?>
226
227 <varlistentry id="certtool">
228 <term><command>certtool</command></term>
229 <listitem>
[3ee626e]230 <para>
231 is used to generate X.509 certificates, certificate requests,
232 and private keys.
233 </para>
[d5404360]234 <indexterm zone="gnutls certtool">
235 <primary sortas="b-certtool">certtool</primary>
236 </indexterm>
237 </listitem>
238 </varlistentry>
239
[a5c54e0]240 <varlistentry id="crywrap">
241 <term><command>crywrap</command></term>
242 <listitem>
243 <para>
[14ea7e8]244 is a simple wrapper that waits for TLS/SSL connections,
[2fd089ac]245 and proxies them to an unencrypted location. Only installed if
[afa551a]246 <xref linkend="libidn"/> is present.
[a5c54e0]247 </para>
248 <indexterm zone="gnutls crywrap">
249 <primary sortas="b-crywrap">crywrap</primary>
250 </indexterm>
251 </listitem>
252 </varlistentry>
253
[4c39aff]254 <varlistentry id="danetool">
255 <term><command>danetool</command></term>
256 <listitem>
257 <para>
258 is a tool used to generate and check DNS resource records
259 for the DANE protocol.
260 </para>
261 <indexterm zone="gnutls danetool">
262 <primary sortas="b-danetool">danetool</primary>
263 </indexterm>
264 </listitem>
265 </varlistentry>
266
[d5404360]267 <varlistentry id="gnutls-cli">
268 <term><command>gnutls-cli</command></term>
269 <listitem>
[3ee626e]270 <para>
271 is a simple client program to set up a TLS connection to some
272 other computer.
273 </para>
[d5404360]274 <indexterm zone="gnutls gnutls-cli">
275 <primary sortas="b-gnutls-cli">gnutls-cli</primary>
276 </indexterm>
277 </listitem>
278 </varlistentry>
279
280 <varlistentry id="gnutls-cli-debug">
281 <term><command>gnutls-cli-debug</command></term>
282 <listitem>
[3ee626e]283 <para>
284 is a simple client program to set up a TLS connection to some
285 other computer and produces very verbose progress results.
286 </para>
[d5404360]287 <indexterm zone="gnutls gnutls-cli-debug">
288 <primary sortas="b-gnutls-cli-debug">gnutls-cli-debug</primary>
289 </indexterm>
290 </listitem>
291 </varlistentry>
292
293 <varlistentry id="gnutls-serv">
294 <term><command>gnutls-serv</command></term>
295 <listitem>
[3ee626e]296 <para>
297 is a simple server program that listens to incoming TLS
298 connections.
299 </para>
[d5404360]300 <indexterm zone="gnutls gnutls-serv">
301 <primary sortas="b-gnutls-serv">gnutls-serv</primary>
302 </indexterm>
303 </listitem>
304 </varlistentry>
305
[546b042]306 <varlistentry id="ocsptool">
307 <term><command>ocsptool</command></term>
308 <listitem>
[3ee626e]309 <para>
[0d7900a]310 is a program that can parse and print information about OCSP
[3ee626e]311 requests/responses, generate requests and verify responses.
312 </para>
[546b042]313 <indexterm zone="gnutls ocsptool">
314 <primary sortas="b-ocsptool">ocsptool</primary>
315 </indexterm>
316 </listitem>
317 </varlistentry>
318
319 <varlistentry id="p11tool">
320 <term><command>p11tool</command></term>
321 <listitem>
[3ee626e]322 <para>
323 is a program that allows handling data from PKCS #11 smart cards
324 and security modules.
325 </para>
[546b042]326 <indexterm zone="gnutls p11tool">
327 <primary sortas="b-p11tool">p11tool</primary>
328 </indexterm>
329 </listitem>
330 </varlistentry>
331
[d5404360]332 <varlistentry id="psktool">
333 <term><command>psktool</command></term>
334 <listitem>
[3ee626e]335 <para>
336 is a simple program that generates random keys for use with TLS-PSK.
337 </para>
[d5404360]338 <indexterm zone="gnutls psktool">
339 <primary sortas="b-psktool">psktool</primary>
340 </indexterm>
341 </listitem>
342 </varlistentry>
343
344 <varlistentry id="srptool">
345 <term><command>srptool</command></term>
346 <listitem>
[3ee626e]347 <para>
348 is a simple program that emulates the programs in the Stanford
349 SRP (Secure Remote Password) libraries using GnuTLS.
350 </para>
[d5404360]351 <indexterm zone="gnutls srptool">
352 <primary sortas="b-srptool">srptool</primary>
353 </indexterm>
354 </listitem>
355 </varlistentry>
356
357 <varlistentry id="libgnutls">
[73d97caf]358 <term><filename class="libraryfile">libgnutls.so</filename></term>
[d5404360]359 <listitem>
[3ee626e]360 <para>
361 contains the core API functions and X.509 certificate API functions.
362 </para>
[d5404360]363 <indexterm zone="gnutls libgnutls">
[5eaf9af8]364 <primary sortas="c-libgnutls">libgnutls.so</primary>
[d5404360]365 </indexterm>
366 </listitem>
367 </varlistentry>
368
369 </variablelist>
370
371 </sect2>
372
373</sect1>
Note: See TracBrowser for help on using the repository browser.