source: postlfs/security/linux_pam.xml@ aadd9ef

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.0 6.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since aadd9ef was aadd9ef, checked in by Randy McMurchy <randy@…>, 19 years ago

Modified Linux-PAM and cracklib instructions to properly create the .so symlinks only in /usr/lib

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@3497 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 7.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
3 "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY Linux_PAM-download-http "http://www.kernel.org/pub/linux/libs/pam/pre/library/Linux-PAM-&Linux_PAM-version;.tar.bz2">
8 <!ENTITY Linux_PAM-download-ftp "ftp://ftp.kernel.org/pub/linux/libs/pam/pre/library/Linux-PAM-&Linux_PAM-version;.tar.bz2">
9 <!ENTITY Linux_PAM-md5sum "34938b4f2449d4d3b2ffdbf354257205">
10 <!ENTITY Linux_PAM-size "364 KB">
11 <!ENTITY Linux_PAM-buildsize "6.1 MB">
12 <!ENTITY Linux_PAM-time "0.07 SBU">
13]>
14
15<sect1 id="Linux_PAM" xreflabel="Linux-PAM-&Linux_PAM-version;">
16<sect1info>
17<othername>$LastChangedBy$</othername>
18<date>$Date$</date>
19</sect1info>
20<?dbhtml filename="linux_pam.html"?>
21<title>Linux-PAM-&Linux_PAM-version;</title>
22<indexterm zone="Linux_PAM">
23<primary sortas="a-PAM_linux">PAM(Linux)</primary></indexterm>
24
25<sect2>
26<title>Introduction to <application>Linux-<acronym>PAM</acronym></application>
27</title>
28
29<para>The <application>Linux-<acronym>PAM</acronym></application> package
30contains Pluggable Authentication Modules. This is useful to enable the local
31system administrator to choose how applications authenticate users.</para>
32
33<sect3><title>Package information</title>
34<itemizedlist spacing='compact'>
35<listitem><para>Download (HTTP): <ulink
36url="&Linux_PAM-download-http;"/></para></listitem>
37<listitem><para>Download (FTP): <ulink
38url="&Linux_PAM-download-ftp;"/></para></listitem>
39<listitem><para>Download MD5 sum: &Linux_PAM-md5sum;</para></listitem>
40<listitem><para>Download size: &Linux_PAM-size;</para></listitem>
41<listitem><para>Estimated disk space required:
42&Linux_PAM-buildsize;</para></listitem>
43<listitem><para>Estimated build time:
44&Linux_PAM-time;</para></listitem></itemizedlist>
45</sect3>
46
47<sect3><title>Additional download</title>
48<itemizedlist spacing='compact'>
49<listitem><para>Required Patch: <ulink
50url="&patch-root;/Linux-PAM-&Linux_PAM-version;-linkage-2.patch"/></para>
51</listitem></itemizedlist>
52</sect3>
53
54<sect3><title><application>Linux-<acronym>PAM</acronym></application>
55dependencies</title>
56<sect4><title>Required</title>
57<para><xref linkend="cracklib"/></para>
58</sect4>
59
60<sect4><title>Optional</title>
61<para><ulink
62url="http://sourceforge.net/projects/sgmltools-lite/">sgmltools-lite</ulink>
63and <xref linkend="db"/> (for pam_userdb module)</para>
64</sect4>
65</sect3>
66
67</sect2>
68
69<sect2>
70<title>Installation of
71<application>Linux-<acronym>PAM</acronym></application></title>
72
73<para>Install <application>Linux-<acronym>PAM</acronym></application> by
74running the following commands:</para>
75
76<screen><userinput><command>patch -Np1 -i ../Linux-PAM-&Linux_PAM-version;-linkage-2.patch &amp;&amp;
77autoconf &amp;&amp;
78./configure --enable-static-libpam --with-mailspool=/var/mail \
79 --enable-read-both-confs --sysconfdir=/etc &amp;&amp;
80make</command></userinput></screen>
81
82<para>Now, as the root user:</para>
83
84<screen><userinput role='root'><command>make install &amp;&amp;
85mv /lib/libpam.a /lib/libpam_misc.a /lib/libpamc.a /usr/lib &amp;&amp;
86rm /lib/libpam{,c,_misc}.so &amp;&amp;
87ln -sf ../../lib/libpam.so.&Linux_PAM-version; /usr/lib/libpam.so &amp;&amp;
88ln -sf ../../lib/libpam_misc.so.&Linux_PAM-version; /usr/lib/libpam_misc.so &amp;&amp;
89ln -sf ../../lib/libpamc.so.&Linux_PAM-version; /usr/lib/libpamc.so</command></userinput></screen>
90
91</sect2>
92
93<sect2>
94<title>Command explanations</title>
95
96<para><command>autoconf</command>: This is necessary because the patch
97changes where <acronym>PAM</acronym> looks for the
98<application>cracklib</application> libraries, requiring regeneration of the
99configure script.</para>
100
101<para><option>--enable-static-libpam</option>: This switch builds
102static <acronym>PAM</acronym> libraries as well as the dynamic libraries.</para>
103
104<para><parameter>--with-mailspool=/var/mail</parameter>: This switch makes
105the mailspool directory <acronym>FHS</acronym> compliant.</para>
106
107<para><option>--enable-read-both-confs</option>: This switch lets the local
108administrator choose which configuration file setup to use.</para>
109
110<para><command>mv /lib/libpam.a /lib/libpam_misc.a /lib/libpamc.a
111/usr/lib</command>: This command moves the static libraries to
112<filename>/usr/lib</filename> to comply with <acronym>FHS</acronym>
113guidelines.</para>
114
115<para><command>rm /lib/libpam{,c,_misc}.so; ln -sf ... /usr/lib/...</command>:
116These commands move the <filename class='symlink'>.so</filename> symlinks from
117<filename class='directory'>/lib</filename> to
118<filename class='directory'>/usr/lib</filename>.</para>
119
120</sect2>
121
122<sect2>
123<title>Configuring
124<application>Linux-<acronym>PAM</acronym></application></title>
125
126<sect3 id="pam-config"><title>Config files</title>
127<para><filename>/etc/pam.d/*</filename> or
128<filename>/etc/pam.conf</filename></para>
129<indexterm zone="Linux_PAM pam-config">
130<primary sortas="e-etc-pam.d">/etc/pam.d/*</primary></indexterm>
131<indexterm zone="Linux_PAM pam-config">
132<primary sortas="e-etc-pam.conf">/etc/pam.conf</primary></indexterm>
133</sect3>
134
135<sect3><title>Configuration Information</title>
136
137<para>Configuration information is placed in
138<filename class='directory'>/etc/pam.d/</filename> or
139<filename>/etc/pam.conf</filename> depending on user preference. Below are
140example files of each type:</para>
141
142<screen># Begin /etc/pam.d/other
143
144auth required pam_unix.so nullok
145account required pam_unix.so
146session required pam_unix.so
147password required pam_unix.so nullok
148
149# End /etc/pam.d/other
150
151# Begin /etc/pam.conf
152
153other auth required pam_unix.so nullok
154other account required pam_unix.so
155other session required pam_unix.so
156other password required pam_unix.so nullok
157
158# End /etc/pam.conf</screen>
159
160<para>The <application><acronym>PAM</acronym></application> man page
161(<command>man pam</command>) provides a good starting point for descriptions
162of fields and allowable entries. The
163<ulink url="http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/pam.html">
164Linux-PAM guide for system administrators</ulink>
165is recommended for further reading.</para>
166
167<para>Refer to
168<ulink url="http://www.kernel.org/pub/linux/libs/pam/modules.html"/>
169for a list of various modules available.</para>
170
171<note><para>You should now reinstall the <xref linkend="shadow"/>
172package.</para></note>
173</sect3>
174
175</sect2>
176
177<sect2>
178<title>Contents</title>
179
180<segmentedlist>
181<segtitle>Installed Program</segtitle>
182<segtitle>Installed Libraries</segtitle>
183<segtitle>Installed Directories</segtitle>
184<seglistitem>
185<seg>unix_chkpwd and pam_tally</seg>
186<seg>libpam.[so,a], libpamc.[so,a] and libpam_misc.[so,a]</seg>
187<seg>/etc/pam.d, /etc/security, /lib/security and /usr/include/security</seg>
188</seglistitem>
189</segmentedlist>
190
191<variablelist>
192<bridgehead renderas="sect3">Short Descriptions</bridgehead>
193<?dbfo list-presentation="list"?>
194
195<varlistentry id="unix_chkpwd">
196<term><command>unix_chkpwd</command></term>
197<listitem><para>checks user passwords that are stored
198in read protected databases.</para>
199<indexterm zone="Linux_PAM unix_chkpwd">
200<primary sortas="b-unix_chkpwd">unix_chkpwd</primary></indexterm>
201</listitem>
202</varlistentry>
203
204<varlistentry id="libpam">
205<term><filename class='libraryfile'>libpam.[so,a]</filename></term>
206<listitem><para>provide the interfaces between applications and the
207<acronym>PAM</acronym> modules.</para>
208<indexterm zone="Linux_PAM libpam">
209<primary sortas="c-libpam">libpam.[so,a]</primary></indexterm>
210</listitem>
211</varlistentry>
212</variablelist>
213
214</sect2>
215
216</sect1>
217
Note: See TracBrowser for help on using the repository browser.