File: cracklib2.html

package info (click to toggle)
cracklib2 2.7-16
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 324 kB
  • ctags: 114
  • sloc: ansic: 1,931; makefile: 124; sh: 48; perl: 46
file content (157 lines) | stat: -rw-r--r-- 5,881 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html>
  <head>
    <title>cracklib2 - a pro-active password library</title>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
    <meta http-equiv="keywords" content="crack, cracklib, password, security" />
  </head>

  <body>
    <h1>cracklib2 - a pro-active password library</h1>

    <p>
      <code>cracklib2</code> is a library containing a C function which may be
      used in a <a
      href="/cgi-bin/man2html/usr/share/man/man1/passwd.1.gz"><code>passwd</code></a>
      like program.  The idea is simple: try to prevent users from choosing
      passwords that could be guessed by <a
      href="http://www.crypticide.org/users/alecm/"><code>crack</code></a> by filtering them out, at
      source. <code>cracklib2</code> is <em>not</em> a replacement <a
      href="/cgi-bin/man2html/usr/share/man/man1/passwd.1.gz"><code>passwd</code></a>
      program.  <code>cracklib2</code> is a <em>library</em>.
    </p>

    <p>
      <code>cracklib2</code> is an offshoot of version 5 of the <a
      href="http://www.crypticide.org/users/alecm/"><code>crack</code></a> software and contains a
      considerable number of ideas nicked from the new software.
    </p>

    <p>
      <code>cracklib2</code>'s <a href="http://www.crypticide.org/users/alecm/">home page</a> provides
      some links on security publications and access to source code written by
      the author of <code>cracklib2</code>.  While there is a <a
      href="README">README</a> there is not much documentation available on
      <code>cracklib2</code>.  Hopefully this page that I generated for the <a
      href="http://www.debian.org">Debian/GNU Linux</a> distribution will
      improve this situation.
    </p>


    <h2>Index</h2>

    <ol>
      <li> <a href="#cracklib.uses">Why <code>cracklib2</code>?</a> </li> 

      <li> <a href="#cracklib.authors">Who is responsible for all of this?</a> </li> 

      <li> <a href="#cracklib.howtouse">How to use <code>cracklib2</code> with Debian</a></li>

      <li> <a href="#cracklib.debian.package">Debian <code>cracklib2</code> package
        overview.</a> </li>

      <li>
        <a href="../cracklib-runtime/cracklib-runtime.html">Debian
        <code>cracklib-runtime</code> utilities.</a> (only available if
        <code>cracklib-runtime</code> package installed)
      </li>

      <li> <a href="changelog.Debian.gz">Debian changelog.</a> </li>

      <li> <a href="changelog.gz">Upstream changelog.</a> </li>

      <li> <a href="copyright">Copyright file.</a> </li>
    </ol>

    <hr/>


    <h2> <a id="cracklib.uses">Why <code>cracklib2</code>?</a> </h2>

    <p>
      One of the most common security weaknesses in computer systems is the use
      of easily guessed passwords.  <code>cracklib2</code> tries to prevent the
      selection of weak passwords by checking potential passwords against <a
      href="#cracklib.dictionaries">dictionaries</a> of commonly used or easily
      guessed words.
    </p>

    <h2> <a id="cracklib.authors">Who is responsible for all of this?</a> </h2>

    <p> <a href="mailto:alecm@crypticide.com">Alec Muffett
      &lt;alecm@crypticide.com&gt;</a> is the author of
      <code>cracklib2</code>.  <a href="mailto:jplejacq@quoininc.com">Jean Pierre
      LeJacq &lt;jplejacq@quoininc.com&gt;</a> initially produced this Debian
      package, <a href="mailto:mpitt@debian.org">Martin Pitt
      &lt;mpitt@debian.org&gt;</a> is its current maintainer.
    </p>

    <h2> <a id="cracklib.howtouse">How to use cracklib2 with Debian</a></h2>

    <p>
      Ideally, the password quality check should be done when an user
      sets his/her password. The PAM (Pluggable Authentication Modules)
      architecture makes it easy to integrate arbitrary checks (like
      cracklib2) into programs like <code>passwd</code> and
      <code>ssh</code>.
    </p>

    <p>To use cracklib2 in Debian, install the package
    <code>libpam_cracklib</code> and append the following two lines to
    <code>/etc/pam.d/passwd</code>:</p>

    <pre>
    password required       pam_cracklib.so retry=3 minlen=6 difok=3
    @include other</pre>

    <p>From now on, cracklib2 checks the password quality whenever a
    password is changed with <code>passwd</code> and rejects bad
    ones.</p>

    <h2><a id="cracklib.debian.package">Debian <code>cracklib2</code> package
      overview.</a></h2>

    <p> The source package is <code>cracklib2</code> which generates the following
      binary packages: </p>

    <dl>
      <dt><code>cracklib2</code></dt>
      <dd>Shared library and this documentation.</dd>

      <dt><code>cracklib2-dev</code></dt>
      <dd>
        Header files, static libraries, and symbolic links
        developers using <code>cracklib2</code> will need. This
	package also provides an example program that shows the usage
	of <code>cracklib2</code> in own applications.
      </dd>

      <dt><code>cracklib-runtime</code></dt>
      <dd>
        Run-time support programs which use the shared library in
        <code>cracklib2</code> including programs to build the password
        dictionary databases used by the functions in the shared library.
      </dd>
    </dl>

    <p> This package does not include dictionaries since there are
    already lots of them in Debian (<code>wenglish</code>,
    <code>wngerman</code>, etc.). </p>

    <hr/>

    <p>
      Original Copyright &copy; 1998, 1999
      <a href="mailto:jplejacq@quoininc.com">Jean Pierre LeJacq</a>
      <br/>
      Currently maintained by <a href="mailto:mpitt@debian.org">Martin Pitt</a> 
      <br/>
      Distributed under the <a href="../../common-licenses/GPL">GNU GENERAL PUBLIC
      LICENSE</a>.
      <br/>
      last-modified: Thu, 21 Oct 2003 
    </p>
  </body>
</html>