source: postlfs/security/libpwquality.xml@ b512e97

12.1 ken/TL2024 ken/tuningfonts lazarus plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18
Last change on this file since b512e97 was b512e97, checked in by Xi Ruoyao <xry111@…>, 9 months ago

libpwquality: Use pip3 wheel for building Python module

Addresses #18455 (comment 1).

  • 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 libpwquality-download-http "https://github.com/libpwquality/libpwquality/releases/download/libpwquality-&libpwquality-version;/libpwquality-&libpwquality-version;.tar.bz2">
8 <!ENTITY libpwquality-download-ftp " ">
9 <!ENTITY libpwquality-md5sum "6b70e355269aef0b9ddb2b9d17936f21">
10 <!ENTITY libpwquality-size "424 KB">
11 <!ENTITY libpwquality-buildsize "5.4 MB">
12 <!ENTITY libpwquality-time "0.1 SBU">
13]>
14
15<sect1 id="libpwquality" xreflabel="libpwquality-&libpwquality-version;">
16 <?dbhtml filename="libpwquality.html"?>
17
18
19 <title>libpwquality-&libpwquality-version;</title>
20
21 <indexterm zone="libpwquality">
22 <primary sortas="a-libpwquality">libpwquality</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to libpwquality</title>
27
28 <para>
29 The <application>libpwquality</application> package provides common
30 functions for password quality checking and also scoring them based on
31 their apparent randomness. The library also provides a function for
32 generating random passwords with good pronounceability.
33 </para>
34
35 &lfs120_checked;
36
37 <bridgehead renderas="sect3">Package Information</bridgehead>
38 <itemizedlist spacing="compact">
39 <listitem>
40 <para>
41 Download (HTTP): <ulink url="&libpwquality-download-http;"/>
42 </para>
43 </listitem>
44 <listitem>
45 <para>
46 Download (FTP): <ulink url="&libpwquality-download-ftp;"/>
47 </para>
48 </listitem>
49 <listitem>
50 <para>
51 Download MD5 sum: &libpwquality-md5sum;
52 </para>
53 </listitem>
54 <listitem>
55 <para>
56 Download size: &libpwquality-size;
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Estimated disk space required: &libpwquality-buildsize;
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Estimated build time: &libpwquality-time;
67 </para>
68 </listitem>
69 </itemizedlist>
70
71 <bridgehead renderas="sect3">libpwquality Dependencies</bridgehead>
72
73 <bridgehead renderas="sect4">Required</bridgehead>
74 <para role="required">
75 <xref linkend="cracklib"/>
76 </para>
77
78 <bridgehead renderas="sect4">Recommended</bridgehead>
79 <para role="recommended">
80 <xref linkend="linux-pam"/>
81 </para>
82<!-- Do not advertise python 2 since python 3 can be used
83 <bridgehead renderas="sect4">Optional</bridgehead>
84 <para role="optional">
85 <xref linkend="python2"/>
86 </para>
87-->
88 </sect2>
89
90 <sect2 role="installation">
91 <title>Installation of libpwquality</title>
92
93 <para>
94 Install <application>libpwquality</application> by running the following
95 commands:
96 </para>
97
98<screen><userinput>./configure --prefix=/usr \
99 --disable-static \
100 --with-securedir=/usr/lib/security \
101 --disable-python-bindings &amp;&amp;
102make &amp;&amp;
103pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir \
104 $PWD/python</userinput></screen>
105
106 <para>
107 This package does not come with a test suite.
108 </para>
109
110 <para>
111 Now, as the <systemitem class="username">root</systemitem> user:
112 </para>
113
114<screen role="root"><userinput>make install &amp;&amp;
115pip3 install --no-index --find-links=dist --no-cache-dir pwquality</userinput></screen>
116
117 </sect2>
118
119 <sect2 role="commands">
120 <title>Command Explanations</title>
121
122 <para>
123 <parameter>--disable-python-bindings</parameter>: This parameter
124 disables building Python bindings with the deprecated
125 <command>python3 setup.py build</command> command. The explicit
126 instruction to build the Python 3 binding with the
127 <command>pip3 wheel</command> command is provided.
128 </para>
129
130 </sect2>
131
132 <sect2 role="configuration">
133 <title>Configuring libpwquality</title>
134
135 <para>
136 <application>libpwquality</application> is intended to be a
137 functional replacement for the now-obsolete
138 <filename>pam_cracklib.so</filename> PAM module. To configure the system
139 to use the <filename>pam_pwquality</filename> module, execute the
140 following commands as the
141 <systemitem class="username">root</systemitem> user:
142 </para>
143
144<screen role="root"><userinput>mv /etc/pam.d/system-password{,.orig} &amp;&amp;
145cat &gt; /etc/pam.d/system-password &lt;&lt; "EOF"
146<literal># Begin /etc/pam.d/system-password
147
148# check new passwords for strength (man pam_pwquality)
149password required pam_pwquality.so authtok_type=UNIX retry=1 difok=1 \
150 minlen=8 dcredit=0 ucredit=0 \
151 lcredit=0 ocredit=0 minclass=1 \
152 maxrepeat=0 maxsequence=0 \
153 maxclassrepeat=0 gecoscheck=0 \
154 dictcheck=1 usercheck=1 \
155 enforcing=1 badwords="" \
156 dictpath=/usr/lib/cracklib/pw_dict
157
158# use yescrypt hash for encryption, use shadow, and try to use any
159# previously defined authentication token (chosen password) set by any
160# prior module.
161password required pam_unix.so yescrypt shadow try_first_pass
162
163# End /etc/pam.d/system-password</literal>
164EOF
165</userinput></screen>
166
167 </sect2>
168
169 <sect2 role="content">
170 <title>Contents</title>
171
172 <segmentedlist>
173 <segtitle>Installed Programs</segtitle>
174 <segtitle>Installed Libraries</segtitle>
175 <segtitle>Installed Directories</segtitle>
176
177 <seglistitem>
178 <seg>
179 pwscore and pwmake
180 </seg>
181 <seg>
182 pam_pwquality.so and libpwquality.so
183 </seg>
184 <seg>
185 /usr/lib/python3.11/site-packages/pwquality-&libpwquality-version;.dist-info
186 <!-- /etc/security was installed by Linux-PAM -->
187 </seg>
188 </seglistitem>
189 </segmentedlist>
190
191 <variablelist>
192 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
193 <?dbfo list-presentation="list"?>
194 <?dbhtml list-presentation="table"?>
195
196 <varlistentry id="pwmake">
197 <term><command>pwmake</command></term>
198 <listitem>
199 <para>
200 is a simple configurable tool for generating random
201 and relatively easily pronounceable passwords
202 </para>
203 <indexterm zone="libpwquality pwmake">
204 <primary sortas="b-pwmake">pwmake</primary>
205 </indexterm>
206 </listitem>
207 </varlistentry>
208
209 <varlistentry id="pwscore">
210 <term><command>pwscore</command></term>
211 <listitem>
212 <para>
213 is a simple tool for checking quality of a password
214 </para>
215 <indexterm zone="libpwquality pwscore">
216 <primary sortas="b-pwscore">pwscore</primary>
217 </indexterm>
218 </listitem>
219 </varlistentry>
220
221 <varlistentry id="libpwquality-lib">
222 <term><filename class="libraryfile">libpwquality.so</filename></term>
223 <listitem>
224 <para>
225 contains API functions for checking the password quality
226 </para>
227 <indexterm zone="libpwquality libpwquality-lib">
228 <primary sortas="c-libpwquality">libpwquality.so</primary>
229 </indexterm>
230 </listitem>
231 </varlistentry>
232
233 <varlistentry id="pam_pwquality">
234 <term><filename class="libraryfile">pam_pwquality.so</filename></term>
235 <listitem>
236 <para>
237 is a <application>Linux PAM</application> module used to perform
238 password quality checking
239 </para>
240 <indexterm zone="libpwquality pam_pwquality">
241 <primary sortas="c-pam_pwquality">pam_pwquality.so</primary>
242 </indexterm>
243 </listitem>
244 </varlistentry>
245
246 </variablelist>
247
248 </sect2>
249
250</sect1>
Note: See TracBrowser for help on using the repository browser.