glfs/postlfs/security/cracklib.xml
Manuel Canales Esparcia 9623b6e8ca Tagged cracklib.xml
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@4195 af4574ff-66df-0310-9fd7-8a98e5e911e0
2005-05-13 19:05:44 +00:00

184 lines
6.6 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY cracklib-download-http "http://www.crypticide.com/users/alecm/security/cracklib,&cracklib-version;.tar.gz">
<!ENTITY cracklib-download-ftp "ftp://ftp.cerias.purdue.edu/pub/tools/unix/libs/cracklib/cracklib.&cracklib-version;.tar.gz">
<!ENTITY cracklib-http-md5sum "0c84ad7413d9dd3e5c2eaa5f97d53c4a">
<!ENTITY cracklib-ftp-md5sum "7f810e310c7f2df33d1eaa2b41ab2435">
<!ENTITY cracklib-size "21 KB">
<!ENTITY cracklib-buildsize "21.8 MB">
<!ENTITY cracklib-time "0.05 SBU">
<!ENTITY crackdict-size "15.6 MB">
<!ENTITY alldict-size "466 KB">
]>
<sect1 id="cracklib" xreflabel="cracklib-&cracklib-version;">
<?dbhtml filename="cracklib.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>Cracklib-&cracklib-version;</title>
<indexterm zone="cracklib">
<primary sortas="a-Cracklib">Cracklib</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Cracklib</title>
<para>The <application>cracklib</application> package contains a
library used to enforce strong passwords by comparing user selected
passwords to words in a chosen wordlist.</para>
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>Download (HTTP): <ulink url="&cracklib-download-http;"/></para>
</listitem>
<listitem>
<para>Download (FTP): <ulink url="&cracklib-download-ftp;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum (HTTP): &cracklib-http-md5sum;</para>
</listitem>
<listitem>
<para>Download MD5 sum (FTP): &cracklib-ftp-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &cracklib-size;</para>
</listitem>
<listitem>
<para>Estimated disk space required: &cracklib-buildsize;</para>
</listitem>
<listitem>
<para>Estimated build time: &cracklib-time;</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing='compact'>
<listitem>
<para>Required Patch: <ulink
url="&patch-root;/cracklib,&cracklib-version;-blfs-1.patch"/></para>
</listitem>
<listitem>
<para>Recommended Patch: <ulink
url="&patch-root;/cracklib,&cracklib-version;-heimdal-1.patch"/></para>
</listitem>
</itemizedlist>
<para>You will also need to download a wordlist for use with
<application>cracklib</application>. There are two wordlists
to choose from at the following location. Use the
<filename>cracklib</filename> word list for good security, or
opt for the <filename>allwords</filename> word list for
lightweight machines short on RAM. You can of course choose
any other word list that you have at your disposal.</para>
<itemizedlist spacing='compact'>
<listitem>
<para>cracklib (&crackdict-size;) at <ulink
url="http://www.cotse.com/tools/wordlists.htm"/></para>
</listitem>
<listitem>
<para>allwords (&alldict-size;) at <ulink
url="http://www.cotse.com/tools/wordlists.htm"/></para>
</listitem>
</itemizedlist>
</sect2>
<sect2 role="installation">
<title>Installation of Cracklib</title>
<para>First, as the <systemitem class="username">root</systemitem>
user, install the chosen word list for
<application>cracklib</application>:</para>
<screen role="root"><userinput>install -v -d -m755 /usr/share/dict &amp;&amp;
install -v -m644 ../<replaceable>[wordlist]</replaceable> /usr/share/dict &amp;&amp;
ln -v -sf <replaceable>[wordlist]</replaceable> /usr/share/dict/words &amp;&amp;
echo $(hostname) >> /usr/share/dict/extra.words</userinput></screen>
<para>The wordlist is linked to <filename>/usr/share/dict/words</filename>
as historically, <filename>words</filename> is the primary wordlist in the
<filename class="directory">/usr/share/dict</filename> directory.
Additionally, the value of <command>hostname</command> is echoed to a file
called <filename>extra.words</filename>. This extra file is intended to be
a site specific list which includes easy to guess passwords such as company
or department names, user's names, product names, computer names, domain
names, etc.</para>
<para>Now apply the BLFS patch:</para>
<screen><userinput>patch -Np1 -i ../cracklib,&cracklib-version;-blfs-1.patch</userinput></screen>
<para>If necessary, apply the <application>Heimdal</application>
patch:</para>
<screen><userinput>cp -R cracklib cracklib_krb5 &amp;&amp;
patch -Np1 -i ../cracklib,&cracklib-version;-heimdal-1.patch</userinput></screen>
<para>Finally, as the <systemitem class="username">root</systemitem>
user, build and install the package:</para>
<screen role="root"><userinput>make install &amp;&amp;
rm -v /lib/libcrack.so &amp;&amp;
ln -v -sf ../../lib/libcrack.so.2.7 /usr/lib/libcrack.so</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para><command>rm -v /lib/libcrack.so; ln -v -sf ...
/usr/lib/libcrack.so</command>: These two commands move the
<filename class='symlink'>libcrack.so</filename>
symlink from <filename class='directory'>/lib</filename> to
<filename class='directory'>/usr/lib</filename>.</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directory</segtitle>
<seglistitem>
<seg>create-cracklib-dict, mkdict, and packer</seg>
<seg>libcrack.so and optionally, libcrack_krb5.so</seg>
<seg>/usr/share/dict</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="libcrack">
<term><filename class='libraryfile'>libcrack.so</filename></term>
<listitem>
<para>provide a fast dictionary lookup method for strong
password enforcement.</para>
<indexterm zone="cracklib libcrack">
<primary sortas="c-libcrack">libcrack.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>