source: postlfs/security/cracklib.xml@ 2e3e271

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 2e3e271 was 2e3e271, checked in by Randy McMurchy <randy@…>, 16 years ago

Updated to Heimdal-1.1; removed the Heimdal-Cracklib patches from both packages as Heimdal has been converted to use Cracklib differently; created a patch to change the names of some installed files so they don't conflict with the E2fsprogs package

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

  • Property mode set to 100644
File size: 10.7 KB
RevLine 
[b4b71892]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[b4b71892]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[15b3bc29]7 <!ENTITY cracklib-download-http "http://downloads.sourceforge.net/cracklib/cracklib-&cracklib-version;.tar.gz">
[fb2e525]8 <!ENTITY cracklib-download-ftp "&gentoo-ftp-repo;/cracklib-&cracklib-version;.tar.gz">
[4de92f7]9 <!ENTITY cracklib-md5sum "580346fa1012f9d9769192f49d3801fa">
10 <!ENTITY cracklib-size "576 KB">
11 <!ENTITY cracklib-buildsize "29 MB">
12 <!ENTITY cracklib-time "0.3 SBU">
[1f4d911]13
[4de92f7]14 <!ENTITY crackdict-download "http://downloads.sourceforge.net/cracklib/cracklib-words-20080203.gz">
[8b1b2dc7]15 <!ENTITY crackdict-size "4.4 MB">
[4de92f7]16 <!ENTITY crackdict-md5sum "f8be7949b1bbc044e36039598a7819d9">
[b4b71892]17]>
18
[8b1b2dc7]19<sect1 id="cracklib" xreflabel="CrackLib-&cracklib-version;">
[9623b6e8]20 <?dbhtml filename="cracklib.html"?>
21
22 <sect1info>
23 <othername>$LastChangedBy$</othername>
24 <date>$Date$</date>
25 </sect1info>
26
[8b1b2dc7]27 <title>CrackLib-&cracklib-version;</title>
[9623b6e8]28
29 <indexterm zone="cracklib">
[8b1b2dc7]30 <primary sortas="a-CrackLib">CrackLib</primary>
[9623b6e8]31 </indexterm>
32
33 <sect2 role="package">
[8b1b2dc7]34 <title>Introduction to CrackLib</title>
[9623b6e8]35
[8b1b2dc7]36 <para>The <application>CrackLib</application> package contains a
[0afcfa88]37 library used to enforce strong passwords by comparing user selected
[8b1b2dc7]38 passwords to words in chosen word lists.</para>
[9623b6e8]39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>Download (HTTP): <ulink url="&cracklib-download-http;"/></para>
44 </listitem>
45 <listitem>
46 <para>Download (FTP): <ulink url="&cracklib-download-ftp;"/></para>
47 </listitem>
48 <listitem>
[84fcbc2]49 <para>Download MD5 sum: &cracklib-md5sum;</para>
[9623b6e8]50 </listitem>
51 <listitem>
52 <para>Download size: &cracklib-size;</para>
53 </listitem>
54 <listitem>
55 <para>Estimated disk space required: &cracklib-buildsize;</para>
56 </listitem>
57 <listitem>
58 <para>Estimated build time: &cracklib-time;</para>
59 </listitem>
60 </itemizedlist>
61
62 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
63 <itemizedlist spacing='compact'>
64 <listitem>
[62494cc]65 <para>Recommended word list for English-speaking countries (size:
[22861b3]66 &crackdict-size;; md5sum: &crackdict-md5sum;):
67 <ulink url="&crackdict-download;"/></para>
68 </listitem>
[2e3e271]69 <!-- <listitem>
[8b1b2dc7]70 <para>Required patch to create a library used with the Heimdal
71 Kerberos 5 package: <ulink
[65a2cdc]72 url="&patch-root;/cracklib-&cracklib-version;-heimdal-2.patch"/></para>
[2e3e271]73 </listitem> -->
[9623b6e8]74 </itemizedlist>
75
[62494cc]76 <para>There are additional word lists available for download, e.g., from
77 <ulink url="http://www.cotse.com/tools/wordlists.htm"/>.
78 <application>CrackLib</application> can utilize as many, or as few word
79 lists you choose to install.</para>
80
[22861b3]81 <important>
82 <para>Users tend to base their passwords on regular words of the spoken
83 language, and crackers know that. <application>CrackLib</application> is
84 intended to filter out such bad passwords at the source using a
85 dictionary created from word lists. To accomplish this, the word list(s)
86 for use with <application>CrackLib</application> must be an exhaustive
87 list of words and word-based keystroke combinations likely to be chosen
88 by users of the system as (guessable) passwords.</para>
89
90 <para>The default word list recommended above for downloading mostly
91 satisfies this role in English-speaking countries. In other situations,
92 it may be necessary to download (or even create) additional word
93 lists.</para>
94
95 <para>Note that word lists suitable for spell-checking are not usable
96 as <application>CrackLib</application> word lists in countries with
97 non-Latin based alphabets, because of <quote>word-based keystroke
98 combinations</quote> that make bad passwords.</para>
99 </important>
[9623b6e8]100
[14e13a0c]101 <bridgehead renderas="sect3">CrackLib Dependencies</bridgehead>
[bccbdaea]102
[14e13a0c]103 <bridgehead renderas="sect4">Optional</bridgehead>
[e19ad480]104 <para role="optional"><xref linkend="python"/></para>
[14e13a0c]105
[3597eb6]106 <para condition="html" role="usernotes">User Notes:
107 <ulink url="&blfs-wiki;/cracklib"/></para>
108
[9623b6e8]109 </sect2>
110
111 <sect2 role="installation">
[8b1b2dc7]112 <title>Installation of CrackLib</title>
[4f65b2f]113
[2e3e271]114 <!-- <para>If desired, apply the <application>Heimdal</application> patch
[8b1b2dc7]115 (note that with this patch the original library is not affected; this patch
116 only creates an additional library used by the
117 <application>Heimdal</application> password-checking routines):</para>
[b4b71892]118
[65a2cdc]119<screen><userinput>patch -Np1 -i ../cracklib-&cracklib-version;-heimdal-2.patch</userinput></screen>
[2e3e271]120 -->
[b4b71892]121
[8b1b2dc7]122 <para>Install <application>CrackLib</application> by running the following
123 commands:</para>
[b4b71892]124
[1976445]125<screen><userinput>./configure --prefix=/usr \
126 --with-default-dict=/lib/cracklib/pw_dict &amp;&amp;
[8b1b2dc7]127make</userinput></screen>
[b4b71892]128
[8b1b2dc7]129 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
[9623b6e8]130
131<screen role="root"><userinput>make install &amp;&amp;
[8b1b2dc7]132mv -v /usr/lib/libcrack.so.2* /lib &amp;&amp;
[22861b3]133ln -v -sf ../../lib/libcrack.so.2.8.0 /usr/lib/libcrack.so</userinput></screen>
134
[1976445]135 <para>Issue the following commands as the
136 <systemitem class="username">root</systemitem> user to install the
137 recommended word list and create the <application>CrackLib</application>
138 dictionary. Other word lists (text based, one word per line) can also be
139 used by simply installing them into
140 <filename class='directory'>/usr/share/dict</filename> and adding them
141 to the <command>create-cracklib-dict</command> command.</para>
[22861b3]142
[4de92f7]143<screen role="root"><userinput>install -v -m644 -D ../cracklib-words-20080203.gz \
[8b1b2dc7]144 /usr/share/dict/cracklib-words.gz &amp;&amp;
145gunzip -v /usr/share/dict/cracklib-words.gz &amp;&amp;
146ln -v -s cracklib-words /usr/share/dict/words &amp;&amp;
147echo $(hostname) >>/usr/share/dict/cracklib-extra-words &amp;&amp;
[1976445]148install -v -m755 -d /lib/cracklib &amp;&amp;
[8b1b2dc7]149create-cracklib-dict /usr/share/dict/cracklib-words \
150 /usr/share/dict/cracklib-extra-words</userinput></screen>
151
152 <para>If desired, check the proper operation of the library as an
153 unprivileged user using the tests included with the package:</para>
154
155<screen><userinput>make test</userinput></screen>
[9623b6e8]156
[c6bdcb0]157 <important>
158 <para>If you are installing <application>CrackLib</application> after
159 your LFS system has been completed and you have the
160 <application>Shadow</application> package installed, you must
161 reinstall <xref linkend="shadow"/> if you wish to provide strong
162 password support on your system. If you are now going to install the
163 <xref linkend="linux-pam"/> package, you may disregard this note as
164 <application>Shadow</application> will be reinstalled after the
165 <application>Linux-PAM</application> installation.</para>
166 </important>
167
[9623b6e8]168 </sect2>
169
170 <sect2 role="commands">
171 <title>Command Explanations</title>
172
[1976445]173 <para><parameter>--with-default-dict=/lib/cracklib/pw_dict</parameter>:
174 This parameter forces the installation of the
175 <application>CrackLib</application> dictionary to the
[8b1b2dc7]176 <filename class='directory'>/lib</filename> hierarchy.</para>
177
178 <para><command>mv -v /usr/lib/libcrack.so.2* /lib</command> and
179 <command>ln -v -sf ../../lib/libcrack.so.2.8.0 ...</command>: These two
180 commands move the <filename class='libraryfile'>libcrack.so.2.8.0</filename>
181 library and associated symlink from
182 <filename class='directory'>/usr/lib</filename> to
183 <filename class='directory'>/lib</filename>, then recreates the
[b26339be]184 <filename class='symlink'>/usr/lib/libcrack.so</filename> symlink pointing
[8b1b2dc7]185 to the relocated file.</para>
186
187 <para><command>install -v -m644 -D ...</command>: This command creates the
188 <filename class='directory'>/usr/share/dict</filename> directory (if it
189 doesn't already exist) and installs the compressed word list there.</para>
190
191 <para><command>ln -v -s cracklib-words /usr/share/dict/words</command>: The
192 word list is linked to <filename>/usr/share/dict/words</filename> as
193 historically, <filename>words</filename> is the primary word list in the
194 <filename class="directory">/usr/share/dict</filename> directory. Omit this
195 command if you already have a <filename>/usr/share/dict/words</filename>
196 file installed on your system.</para>
197
198 <para><command>echo $(hostname) >>...</command>: The value of
199 <command>hostname</command> is echoed to a file called
200 <filename>cracklib-extra-words</filename>. This extra file is intended to be
201 a site specific list which includes easy to guess passwords such as company
202 or department names, user's names, product names, computer names, domain
203 names, etc.</para>
204
205 <para><command>create-cracklib-dict ...</command>: This command creates the
[22861b3]206 <application>CrackLib</application> dictionary from the word lists. Modify
207 the command to add any additional word lists you have installed.</para>
[9623b6e8]208
209 </sect2>
210
211 <sect2 role="content">
212 <title>Contents</title>
213
214 <segmentedlist>
215 <segtitle>Installed Programs</segtitle>
216 <segtitle>Installed Libraries</segtitle>
[d80152af]217 <segtitle>Installed Directories</segtitle>
[9623b6e8]218
219 <seglistitem>
[8b1b2dc7]220 <seg>cracklib-check, cracklib-format, cracklib-packer,
221 cracklib-unpacker and create-cracklib-dict</seg>
[2e3e271]222 <seg>libcrack.{so,a} and the cracklibmodule.{so,a}
223 <application>Python</application> module</seg>
[1976445]224 <seg>/lib/cracklib, /usr/share/dict and /usr/share/cracklib</seg>
[9623b6e8]225 </seglistitem>
226 </segmentedlist>
227
228 <variablelist>
229 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
230 <?dbfo list-presentation="list"?>
231 <?dbhtml list-presentation="table"?>
232
[8b1b2dc7]233 <varlistentry id="create-cracklib-dict">
234 <term><filename>create-cracklib-dict</filename></term>
235 <listitem>
236 <para>is used to create the <application>CrackLib</application>
237 dictionary from the given word list(s).</para>
238 <indexterm zone="cracklib create-cracklib-dict">
239 <primary sortas="b-create-cracklib-dict">create-cracklib-dict</primary>
240 </indexterm>
241 </listitem>
242 </varlistentry>
243
[9623b6e8]244 <varlistentry id="libcrack">
[3597eb6]245 <term><filename class='libraryfile'>libcrack.{so,a}</filename></term>
[9623b6e8]246 <listitem>
[8b1b2dc7]247 <para>provides a fast dictionary lookup method for strong
[9623b6e8]248 password enforcement.</para>
249 <indexterm zone="cracklib libcrack">
[3597eb6]250 <primary sortas="c-libcrack">libcrack.{so,a}</primary>
[9623b6e8]251 </indexterm>
252 </listitem>
253 </varlistentry>
254
255 </variablelist>
256
257 </sect2>
[fa48bf3]258
259</sect1>
Note: See TracBrowser for help on using the repository browser.