source: postlfs/security/cryptsetup.xml@ 6cc2f9a8

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 6cc2f9a8 was 6cc2f9a8, checked in by Pierre Labastie <pieere@…>, 6 years ago

JSON-C is required for cryptsetup

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

  • Property mode set to 100644
File size: 8.0 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 cryptsetup-download-http "&kernel-dl;/linux/utils/cryptsetup/v&cryptsetup-minor;/cryptsetup-&cryptsetup-version;.tar.xz">
8 <!ENTITY cryptsetup-download-ftp " ">
9 <!ENTITY cryptsetup-md5sum "33ac21fdcb29d6cd144408694017490c">
10 <!ENTITY cryptsetup-size "9.7 MB">
11 <!ENTITY cryptsetup-buildsize "25 MB (add 13 MB for tests)">
12 <!ENTITY cryptsetup-time "0.2 SBU (add 10.4 SBU for tests)">
13]>
14
15<sect1 id="cryptsetup" xreflabel="cryptsetup-&cryptsetup-version;">
16 <?dbhtml filename="cryptsetup.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>cryptsetup-&cryptsetup-version;</title>
24
25 <indexterm zone="cryptsetup">
26 <primary sortas="a-cryptsetup">cryptsetup</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to cryptsetup</title>
31
32 <para>
33 cryptsetup is used to set up transparent encryption of block devices
34 using the kernel crypto API.
35 </para>
36
37 &lfs82_checked;
38
39 <bridgehead renderas="sect3">Package Information</bridgehead>
40 <itemizedlist spacing="compact">
41 <listitem>
42 <para>
43 Download (HTTP): <ulink url="&cryptsetup-download-http;"/>
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download (FTP): <ulink url="&cryptsetup-download-ftp;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download MD5 sum: &cryptsetup-md5sum;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download size: &cryptsetup-size;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Estimated disk space required: &cryptsetup-buildsize;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated build time: &cryptsetup-time;
69 </para>
70 </listitem>
71 </itemizedlist>
72
73 <bridgehead renderas="sect3">cryptsetup Dependencies</bridgehead>
74
75 <bridgehead renderas="sect4">Required</bridgehead>
76 <para role="required">
77 <xref linkend="json-c"/>,
78 <xref linkend="lvm2"/>, and
79 <xref linkend="popt"/>
80 </para>
81
82 <bridgehead renderas="sect4">Optional</bridgehead>
83 <para role="optional">
84 One of (<xref linkend="libgcrypt"/>,
85 <xref linkend="nettle"/>, or
86 <xref linkend="nss"/>),
87 <xref linkend="libpwquality"/>,
88 <xref linkend="python2"/>, and
89 <ulink url="http://www.openwall.com/passwdqc/">passwdqc</ulink>
90 </para>
91
92
93 <para condition="html" role="usernotes">User Notes:
94 <ulink url="&blfs-wiki;/cryptsetup"/>
95 </para>
96 </sect2>
97
98 <sect2 role="kernel" id="cryptsetup-kernel">
99 <title>Kernel Configuration</title>
100
101 <para>
102 Encrypted block devices require kernel support. To use it, the
103 appropriate kernel configuration parameters need to be set:
104 </para>
105
106<screen><literal>Device Drivers ---&gt;
107 [*] Multiple devices driver support (RAID and LVM) ---&gt; [CONFIG_MD]
108 &lt;*/M&gt; Device mapper support [CONFIG_BLK_DEV_DM]
109 &lt;*/M&gt; Crypt target support [CONFIG_DM_CRYPT]
110
111Cryptographic API ---&gt;
112 &lt;*/M&gt; XTS support [CONFIG_CRYPTO_XTS]
113 &lt;*/M&gt; SHA224 and SHA256 digest algorithm [CONFIG_CRYPTO_SHA256]
114 &lt;*/M&gt; AES cipher algorithms [CONFIG_CRYPTO_AES]
115 &lt;*/M&gt; AES cipher algorithms (x86_64) [CONFIG_CRYPTO_AES_X86_64]
116 &lt;*/M&gt; User-space interface for symmetric key cipher algorithms
117 [CONFIG_CRYPTO_USER_API_SKCIPHER]
118 For tests:
119 &lt;*/M&gt; Twofish cipher algorithm [CONFIG_CRYPTO_TWOFISH]</literal></screen>
120
121 <indexterm zone="cryptsetup cryptsetup-kernel">
122 <primary sortas="d-cryptsetup">cryptsetup</primary>
123 </indexterm>
124
125 </sect2>
126
127 <sect2 role="installation">
128 <title>Installation of cryptsetup</title>
129
130 <para>
131 Install <application>cryptsetup</application> by running the following
132 commands:
133 </para>
134
135<screen><userinput>./configure --prefix=/usr \
136 --with-crypto_backend=openssl &amp;&amp;
137make</userinput></screen>
138
139 <para>
140 To test the result, issue as the <systemitem
141 class="username">root</systemitem> user: <command>make check</command>.
142 Some tests may fail if the kernel configuration parameters above are not
143 set.
144 </para>
145
146 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
147
148<screen role="root"><userinput>make install</userinput></screen>
149
150 </sect2>
151
152 <sect2 role="commands">
153 <title>Command Explanations</title>
154
155 <para><parameter>--with-crypto_backend=openssl</parameter>:
156 This parameter selects the cryptographic libraries to use
157 with the application. <application>gcrypt</application>
158 is the default.</para>
159
160 </sect2>
161
162 <sect2 role="configuration">
163 <title>Configuring cryptsetup</title>
164
165 <para>
166 Because of the number of possible configurations, setup of encrypted
167 volumes is beyond the scope of the BLFS book. Please see the
168 configuration guide in the cryptsetup <ulink
169 url="https://gitlab.com/cryptsetup/cryptsetup/wikis/FrequentlyAskedQuestions#2-setup">
170 FAQ</ulink>.
171 </para>
172
173 </sect2>
174
175 <sect2 role="content">
176 <title>Contents</title>
177
178 <segmentedlist>
179 <segtitle>Installed Programs</segtitle>
180 <segtitle>Installed Libraries</segtitle>
181 <segtitle>Installed Directories</segtitle>
182
183 <seglistitem>
184 <seg>
185 cryptsetup,
186 cryptsetup-reencrypt,
187 integritysetup, and
188 veritysetup
189 </seg>
190 <seg>
191 libcryptsetup.so
192 </seg>
193 <seg>
194 None
195 </seg>
196 </seglistitem>
197 </segmentedlist>
198
199 <variablelist>
200 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
201 <?dbfo list-presentation="list"?>
202 <?dbhtml list-presentation="table"?>
203
204 <varlistentry id="cryptsetup-prog">
205 <term><command>cryptsetup</command></term>
206 <listitem>
207 <para>
208 is used to setup dm-crypt managed device-mapper mappings.
209 </para>
210 <indexterm zone="cryptsetup cryptsetup-prog">
211 <primary sortas="b-cryptsetup">cryptsetup</primary>
212 </indexterm>
213 </listitem>
214 </varlistentry>
215
216 <varlistentry id="cryptsetup-reencrypt">
217 <term><command>cryptsetup-reencrypt</command></term>
218 <listitem>
219 <para>
220 is a for offline LUKS device re-encryption.
221 </para>
222 <indexterm zone="cryptsetup cryptsetup-reencrypt">
223 <primary sortas="b-cryptsetup-reencrypt">cryptsetup-reencrypt</primary>
224 </indexterm>
225 </listitem>
226 </varlistentry>
227
228 <varlistentry id="integritysetup">
229 <term><command>integritysetup</command></term>
230 <listitem>
231 <para>
232 is a tool to manage dm-integrity (block level integrity) volumes.
233 </para>
234 <indexterm zone="cryptsetup integritysetup">
235 <primary sortas="b-integritysetup">integritysetup</primary>
236 </indexterm>
237 </listitem>
238 </varlistentry>
239
240 <varlistentry id="veritysetup">
241 <term><command>veritysetup</command></term>
242 <listitem>
243 <para>
244 is used to configure dm-verity managed device-mapper mappings.
245 Device-mapper verity target provides read-only transparent integrity
246 checking of block devices using kernel crypto API.
247 </para>
248 <indexterm zone="cryptsetup veritysetup">
249 <primary sortas="b-veritysetup">veritysetup</primary>
250 </indexterm>
251 </listitem>
252 </varlistentry>
253
254 </variablelist>
255
256 </sect2>
257
258</sect1>
Note: See TracBrowser for help on using the repository browser.