source: postlfs/security/libpwquality.xml@ 0b8cb69c

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

libpwquality: Use pip3 wheel for building Python module

Addresses #18455 (comment 1).

  • Property mode set to 100644
File size: 8.0 KB
RevLine 
[f97d5f6]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
[3c64e32]7 <!ENTITY libpwquality-download-http "https://github.com/libpwquality/libpwquality/releases/download/libpwquality-&libpwquality-version;/libpwquality-&libpwquality-version;.tar.bz2">
[f97d5f6]8 <!ENTITY libpwquality-download-ftp " ">
[2bfa995]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">
[f97d5f6]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">
[183f254]22 <primary sortas="a-libpwquality">libpwquality</primary>
[f97d5f6]23 </indexterm>
24
25 <sect2 role="package">
[183f254]26 <title>Introduction to libpwquality</title>
[f97d5f6]27
28 <para>
[096ed61]29 The <application>libpwquality</application> package provides common
[f97d5f6]30 functions for password quality checking and also scoring them based on
31 their apparent randomness. The library also provides a function for
[f3429309]32 generating random passwords with good pronounceability.
[f97d5f6]33 </para>
34
[fbd04125]35 &lfs120_checked;
[f97d5f6]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
[9dc3146]73 <bridgehead renderas="sect4">Required</bridgehead>
74 <para role="required">
75 <xref linkend="cracklib"/>
76 </para>
77
[f97d5f6]78 <bridgehead renderas="sect4">Recommended</bridgehead>
79 <para role="recommended">
[9dc3146]80 <xref linkend="linux-pam"/>
[f97d5f6]81 </para>
[85ac148]82<!-- Do not advertise python 2 since python 3 can be used
[2c64887e]83 <bridgehead renderas="sect4">Optional</bridgehead>
84 <para role="optional">
85 <xref linkend="python2"/>
86 </para>
[85ac148]87-->
[f97d5f6]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
[e92e7dc]98<screen><userinput>./configure --prefix=/usr \
99 --disable-static \
100 --with-securedir=/usr/lib/security \
[b512e97]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>
[f97d5f6]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>
[8558044]113
[b512e97]114<screen role="root"><userinput>make install &amp;&amp;
115pip3 install --no-index --find-links=dist --no-cache-dir pwquality</userinput></screen>
[f97d5f6]116
117 </sect2>
118
[2c64887e]119 <sect2 role="commands">
120 <title>Command Explanations</title>
121
122 <para>
[b512e97]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.
[2c64887e]128 </para>
[7e11b83c]129
[2c64887e]130 </sect2>
131
[62066a54]132 <sect2 role="configuration">
[eecc046]133 <title>Configuring libpwquality</title>
[62066a54]134
[7e11b83c]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>
[62066a54]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 \
[cbb07ee4]153 maxclassrepeat=0 gecoscheck=0 \
[62066a54]154 dictcheck=1 usercheck=1 \
155 enforcing=1 badwords="" \
[e92e7dc]156 dictpath=/usr/lib/cracklib/pw_dict
[c0464a8]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
[62066a54]162
163# End /etc/pam.d/system-password</literal>
164EOF
165</userinput></screen>
166
167 </sect2>
[8558044]168
[f97d5f6]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>
[b512e97]185 /usr/lib/python3.11/site-packages/pwquality-&libpwquality-version;.dist-info
[651c7ebf]186 <!-- /etc/security was installed by Linux-PAM -->
[f97d5f6]187 </seg>
188 </seglistitem>
189 </segmentedlist>
[183f254]190
[f97d5f6]191 <variablelist>
192 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
193 <?dbfo list-presentation="list"?>
194 <?dbhtml list-presentation="table"?>
195
[183f254]196 <varlistentry id="pwmake">
197 <term><command>pwmake</command></term>
198 <listitem>
199 <para>
200 is a simple configurable tool for generating random
[4c24eb0a]201 and relatively easily pronounceable passwords
[183f254]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>
[4c24eb0a]213 is a simple tool for checking quality of a password
[183f254]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>
[4c24eb0a]225 contains API functions for checking the password quality
[183f254]226 </para>
227 <indexterm zone="libpwquality libpwquality-lib">
228 <primary sortas="c-libpwquality">libpwquality.so</primary>
229 </indexterm>
230 </listitem>
231 </varlistentry>
[f97d5f6]232
[183f254]233 <varlistentry id="pam_pwquality">
234 <term><filename class="libraryfile">pam_pwquality.so</filename></term>
[f97d5f6]235 <listitem>
[183f254]236 <para>
237 is a <application>Linux PAM</application> module used to perform
[4c24eb0a]238 password quality checking
[183f254]239 </para>
240 <indexterm zone="libpwquality pam_pwquality">
241 <primary sortas="c-pam_pwquality">pam_pwquality.so</primary>
[f97d5f6]242 </indexterm>
243 </listitem>
244 </varlistentry>
245
246 </variablelist>
[183f254]247
[f97d5f6]248 </sect2>
249
250</sect1>
Note: See TracBrowser for help on using the repository browser.