Difference between revisions of "Cracklib"

From CBLFS
Jump to navigationJump to search
m
(Update where python modules install)
 
(7 intermediate revisions by 2 users not shown)
Line 9: Line 9:
 
!Download Optional Patch:
 
!Download Optional Patch:
 
|-valign="top"
 
|-valign="top"
| http://svn.cross-lfs.org/svn/repos/patches/cracklib/cracklib-{{Cracklib-Version}}-heimdal-2.patch (Required patch to create a library used with the Heimdal Kerberos 5 package)
+
| http://svn.cross-lfs.org/svn/repos/patches/cracklib/cracklib-{{Cracklib-Version}}-heimdal-1.patch (Required patch to create a library used with the Heimdal Kerberos 5 package)
 
|}
 
|}
  
Line 35: Line 35:
  
 
  make install &&
 
  make install &&
LIBNAME=$(cat lib/libcrack.la | grep library_names | cut -f2 -d"'" | cut  -f2 -d" ") &&
+
  mv -v /usr/lib/libcrack.so.2.8.1 /lib &&
  mv -v /usr/lib/$LIBNAME /lib &&
+
  ln -svf ../../lib/libcrack.so.2.8.1 /usr/lib/libcrack.so &&
LIBNAME=$(cat lib/libcrack.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") &&
+
ldconfig
mv -v /usr/lib/$LIBNAME /lib &&
 
  ln -svf ../../lib/$LIBNAME /usr/lib/libcrack.so
 
  
 
Install the dictionary:
 
Install the dictionary:
Line 46: Line 44:
 
  gunzip -f /usr/share/dict/cracklib-words.gz
 
  gunzip -f /usr/share/dict/cracklib-words.gz
 
  ln -svf cracklib-words /usr/share/dict/words
 
  ln -svf cracklib-words /usr/share/dict/words
echo $(hostname) >>/usr/share/dict/cracklib-extra-words &&
 
 
  install -v -m755 -d /lib/cracklib
 
  install -v -m755 -d /lib/cracklib
 
  create-cracklib-dict /usr/share/dict/cracklib-words
 
  create-cracklib-dict /usr/share/dict/cracklib-words
Line 66: Line 63:
  
 
  make install &&
 
  make install &&
LIBNAME=$(cat lib/libcrack.la | grep library_names | cut -f2 -d"'" | cut -f2 -d" ") &&
+
  mv -v /usr/lib/libcrack.so.2.8.1 /lib &&
  mv -v /usr/lib/$LIBNAME /lib &&
+
  ln -svf ../../lib/libcrack.so.2.8.1 /usr/lib/libcrack.so &&
LIBNAME=$(cat lib/libcrack.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") &&
+
ldconfig
mv -v /usr/lib/$LIBNAME /lib &&
 
  ln -svf ../../lib/$LIBNAME /usr/lib/libcrack.so
 
  
 
=== N32 ===
 
=== N32 ===
Line 78: Line 73:
 
  CC="gcc ${BUILDN32}" USE_ARCH=n32 ./configure --prefix=/usr \
 
  CC="gcc ${BUILDN32}" USE_ARCH=n32 ./configure --prefix=/usr \
 
   --libdir=/usr/lib32 -with-default-dict=/lib/cracklib/pw_dict &&
 
   --libdir=/usr/lib32 -with-default-dict=/lib/cracklib/pw_dict &&
 +
sed -i 's@prefix}/lib@&32@g' dicts/Makefile doc/Makefile lib/Makefile \
 +
      m4/Makefile Makefile python/Makefile util/Makefile &&
 
  make
 
  make
  
Line 83: Line 80:
  
 
  make install &&
 
  make install &&
LIBNAME=$(cat lib/libcrack.la | grep library_names | cut -f2 -d"'" | cut -f2 -d" ") &&
+
  mv -v /usr/lib32/libcrack.so.2.8.1 /lib32 &&
  mv -v /usr/lib32/$LIBNAME /lib32 &&
+
  ln -svf ../../lib32/libcrack.so.2.8.1 /usr/lib32/libcrack.so &&
LIBNAME=$(cat lib/libcrack.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") &&
+
ldconfig
mv -v /usr/lib32/$LIBNAME /lib32 &&
 
  ln -svf ../../lib32/$LIBNAME /usr/lib32/libcrack.so
 
  
 
=== 64Bit ===
 
=== 64Bit ===
Line 95: Line 90:
 
  CC="gcc ${BUILD64}" USE_ARCH=64 ./configure --prefix=/usr \
 
  CC="gcc ${BUILD64}" USE_ARCH=64 ./configure --prefix=/usr \
 
   --libdir=/usr/lib64 -with-default-dict=/lib/cracklib/pw_dict &&
 
   --libdir=/usr/lib64 -with-default-dict=/lib/cracklib/pw_dict &&
 +
sed -i 's@prefix}/lib@&64@g' dicts/Makefile doc/Makefile lib/Makefile \
 +
      m4/Makefile Makefile python/Makefile util/Makefile &&
 
  make
 
  make
  
Line 100: Line 97:
  
 
  make install &&
 
  make install &&
LIBNAME=$(cat lib/libcrack.la | grep library_names | cut -f2 -d"'" | cut -f2 -d" ") &&
+
  mv -v /usr/lib64/libcrack.so.2.8.1 /lib64 &&
  mv -v /usr/lib64/$LIBNAME /lib64 &&
+
  ln -svf ../../lib64/libcrack.so.2.8.1 /usr/lib64/libcrack.so &&
LIBNAME=$(cat lib/libcrack.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") &&
+
ldconfig
mv -v /usr/lib64/$LIBNAME /lib64 &&
 
  ln -svf ../../lib64/$LIBNAME /usr/lib64/libcrack.so
 
  
 
Install the dictionary:
 
Install the dictionary:

Latest revision as of 18:45, 21 September 2012

Download Source:
http://prdownloads.sourceforge.net/cracklib/cracklib-2.8.22.tar.gz
http://downloads.sourceforge.net/cracklib/cracklib-words-20080507.gz (Recommended word list for English-speaking countries)
Download Optional Patch:
http://svn.cross-lfs.org/svn/repos/patches/cracklib/cracklib-2.8.22-heimdal-1.patch (Required patch to create a library used with the Heimdal Kerberos 5 package)

Introduction to Cracklib

Cracklib is used to enforce strong passwords. It uses its dictionary of words to verify that passwords are difficult to crack.

Project Homepage: http://sourceforge.net/projects/cracklib/

Dependencies

Optional

Non-Multilib

If desired, apply the Heimdal patch (note that with this patch the original library is not affected; this patch only creates an additional library used by the Heimdal password-checking routines):

patch -Np1 -i ../cracklib-2.8.22-heimdal-1.patch

Configure and compile the package:

./configure --prefix=/usr -with-default-dict=/lib/cracklib/pw_dict &&
make

Install the package:

make install &&
mv -v /usr/lib/libcrack.so.2.8.1 /lib &&
ln -svf ../../lib/libcrack.so.2.8.1 /usr/lib/libcrack.so &&
ldconfig

Install the dictionary:

install -v -m644 -D ../cracklib-words-20080507.gz /usr/share/dict/cracklib-words.gz
gunzip -f /usr/share/dict/cracklib-words.gz
ln -svf cracklib-words /usr/share/dict/words
install -v -m755 -d /lib/cracklib
create-cracklib-dict /usr/share/dict/cracklib-words

Multilib

If desired, apply the Heimdal patch (note that with this patch the original library is not affected; this patch only creates an additional library used by the Heimdal password-checking routines):

patch -Np1 -i ../cracklib-2.8.22-heimdal-1.patch

32Bit

Configure and compile the package:

CC="gcc ${BUILD32}" USE_ARCH=32 ./configure --prefix=/usr -with-default-dict=/lib/cracklib/pw_dict &&
make

Install the package:

make install &&
mv -v /usr/lib/libcrack.so.2.8.1 /lib &&
ln -svf ../../lib/libcrack.so.2.8.1 /usr/lib/libcrack.so &&
ldconfig

N32

Configure and compile the package:

CC="gcc ${BUILDN32}" USE_ARCH=n32 ./configure --prefix=/usr \
  --libdir=/usr/lib32 -with-default-dict=/lib/cracklib/pw_dict &&
sed -i 's@prefix}/lib@&32@g' dicts/Makefile doc/Makefile lib/Makefile \
     m4/Makefile Makefile python/Makefile util/Makefile &&
make

Install the package:

make install &&
mv -v /usr/lib32/libcrack.so.2.8.1 /lib32 &&
ln -svf ../../lib32/libcrack.so.2.8.1 /usr/lib32/libcrack.so &&
ldconfig

64Bit

Configure and compile the package:

CC="gcc ${BUILD64}" USE_ARCH=64 ./configure --prefix=/usr \
  --libdir=/usr/lib64 -with-default-dict=/lib/cracklib/pw_dict &&
sed -i 's@prefix}/lib@&64@g' dicts/Makefile doc/Makefile lib/Makefile \
     m4/Makefile Makefile python/Makefile util/Makefile &&
make

Install the package:

make install &&
mv -v /usr/lib64/libcrack.so.2.8.1 /lib64 &&
ln -svf ../../lib64/libcrack.so.2.8.1 /usr/lib64/libcrack.so &&
ldconfig

Install the dictionary:

install -v -m644 -D ../cracklib-words-20080507.gz /usr/share/dict/cracklib-words.gz
gunzip -f /usr/share/dict/cracklib-words.gz
ln -svf cracklib-words /usr/share/dict/words
install -v -m755 -d /lib/cracklib
create-cracklib-dict /usr/share/dict/cracklib-words

Contents

Installed Programs: cracklib-check, cracklib-format, cracklib-packer, cracklib-unpacker, create-cracklib-dict
Installed Libraries: libcrack.{so,a}, libcrack_heimdal.{so,a}, cracklibmodule.{so,a} Python Modules
Installed Directories: /lib/cracklib, /usr/share/dict, /usr/share/cracklib

Short Descriptions

create-cracklib-dict is used to create the CrackLib dictionary from the given word list(s).
libcrack.{so,a} provides a fast dictionary lookup method for strong password enforcement.
Retrieved from "?title=Cracklib&oldid=21409"