PAM Library: Difference between revisions
No edit summary |
mNo edit summary |
||
| Line 31: | Line 31: | ||
./configure --libdir=/usr/lib --sbindir=/lib/security \ | ./configure --libdir=/usr/lib --sbindir=/lib/security \ | ||
--enable-securedir=/lib/security \ | --enable-securedir=/lib/security \ | ||
- | --docdir=/usr/share/doc/Linux-PAM-{{PAM_Library-Version}} \ | ||
--enable-shared \ | |||
--enable-read-both-confs && | --enable-read-both-confs && | ||
make | make | ||
| Line 42: | Line 43: | ||
mv -v /usr/lib/libpam*.so.0* /lib && | mv -v /usr/lib/libpam*.so.0* /lib && | ||
LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib/$LIBNAME /usr/lib/libpam.so && | ||
LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib/$LIBNAME /usr/lib/libpamc.so && | ||
LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib/$LIBNAME /usr/lib/libpam_misc.so | ||
| Line 59: | Line 60: | ||
CC="gcc ${BUILD32}" ./configure --libdir=/usr/lib --sbindir=/lib/security \ | CC="gcc ${BUILD32}" ./configure --libdir=/usr/lib --sbindir=/lib/security \ | ||
--enable-securedir=/lib/security \ | --enable-securedir=/lib/security \ | ||
- | --docdir=/usr/share/doc/Linux-PAM-{{PAM_Library-Version}} \ | ||
--enable-shared \ | |||
--enable-read-both-confs && | --enable-read-both-confs && | ||
make | make | ||
| Line 70: | Line 72: | ||
mv -v /usr/lib/libpam*.so.0* /lib && | mv -v /usr/lib/libpam*.so.0* /lib && | ||
LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib/$LIBNAME /usr/lib/libpam.so && | ||
LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib/$LIBNAME /usr/lib/libpamc.so && | ||
LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib/$LIBNAME /usr/lib/libpam_misc.so | ||
=== N32 === | === N32 === | ||
| Line 84: | Line 86: | ||
CC="gcc ${BUILDN32}" ./configure --libdir=/usr/lib32 --sbindir=/lib32/security \ | CC="gcc ${BUILDN32}" ./configure --libdir=/usr/lib32 --sbindir=/lib32/security \ | ||
--enable-securedir=/lib32/security \ | --enable-securedir=/lib32/security \ | ||
- | --docdir=/usr/share/doc/Linux-PAM-{{PAM_Library-Version}} \ | ||
--enable-shared \ | |||
--enable-read-both-confs && | --enable-read-both-confs && | ||
make | make | ||
| Line 95: | Line 98: | ||
mv -v /usr/lib32/libpam*.so.0* /lib32 && | mv -v /usr/lib32/libpam*.so.0* /lib32 && | ||
LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib32/$LIBNAME /usr/lib32/libpam.so && | ||
LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib32/$LIBNAME /usr/lib32/libpamc.so && | ||
LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib32/$LIBNAME /usr/lib32/libpam_misc.so | ||
=== 64Bit === | === 64Bit === | ||
| Line 109: | Line 112: | ||
CC="gcc ${BUILD64}" ./configure --libdir=/usr/lib64 --sbindir=/lib64/security \ | CC="gcc ${BUILD64}" ./configure --libdir=/usr/lib64 --sbindir=/lib64/security \ | ||
--enable-securedir=/lib64/security \ | --enable-securedir=/lib64/security \ | ||
- | --docdir=/usr/share/doc/Linux-PAM-{{PAM_Library-Version}} \ | ||
--enable-shared \ | |||
--enable-read-both-confs && | --enable-read-both-confs && | ||
make | make | ||
| Line 120: | Line 124: | ||
mv -v /usr/lib64/libpam*.so.0* /lib64 && | mv -v /usr/lib64/libpam*.so.0* /lib64 && | ||
LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib64/$LIBNAME /usr/lib64/libpam.so && | ||
LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib64/$LIBNAME /usr/lib64/libpamc.so && | ||
LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && | ||
ln - | ln -svf ../../lib64/$LIBNAME /usr/lib64/libpam_misc.so | ||
== Configuring pam_console == | == Configuring pam_console == | ||
Revision as of 09:31, 6 May 2008
| Download Source: | ftp://ftp.kernel.org/pub/linux/libs/pam/library/Linux-PAM-1.1.3.tar.bz2 |
|---|---|
| Required Patch: | http://svn.cross-lfs.org/svn/repos/patches/Linux-PAM/Linux-PAM-1.1.3-pam_console-1.patch |
Introduction to PAM Library
The PAM Library package contains Pluggable Authentication Modules. This is useful for enabling the local system administrator to choose how applications authenticate users.
RedHat develops a set of external modules for use with Linux-PAM. This includes the pam_console module which can be used by some programs such as HAL and gnome-volume-manager. The purpose of pam_console is to indicate which user is active at the console and take appropriate actions. It does this by listing active users in the /var/run/console directory and assigning one to the console.lock file.
Project Homepage: http://www.kernel.org/pub/linux/libs/pam/
Dependencies
Optional
Non-Multilib
Configure and compile the package:
patch -Np1 -i ../Linux-PAM-1.1.3-pam_console-1.patch &&
autoreconf -v &&
./configure --libdir=/usr/lib --sbindir=/lib/security \
--enable-securedir=/lib/security \
--docdir=/usr/share/doc/Linux-PAM-1.1.3 \
--enable-shared \
--enable-read-both-confs &&
make
Install the package:
make install && chmod -v 4755 /lib/security/unix_chkpwd && mv -v /lib/security/pam_tally /sbin && mv -v /usr/lib/libpam*.so.0* /lib && LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib/$LIBNAME /usr/lib/libpam.so && LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib/$LIBNAME /usr/lib/libpamc.so && LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib/$LIBNAME /usr/lib/libpam_misc.so
Multilib
32Bit
Configure and compile the package:
patch -Np1 -i ../Linux-PAM-1.1.3-pam_console-1.patch &&
autoreconf -v &&
CC="gcc ${BUILD32}" ./configure --libdir=/usr/lib --sbindir=/lib/security \
--enable-securedir=/lib/security \
--docdir=/usr/share/doc/Linux-PAM-1.1.3 \
--enable-shared \
--enable-read-both-confs &&
make
Install the package:
make install && chmod -v 4755 /lib/security/unix_chkpwd && mv -v /lib/security/pam_tally /sbin && mv -v /usr/lib/libpam*.so.0* /lib && LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib/$LIBNAME /usr/lib/libpam.so && LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib/$LIBNAME /usr/lib/libpamc.so && LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib/$LIBNAME /usr/lib/libpam_misc.so
N32
Configure and compile the package:
patch -Np1 -i ../Linux-PAM-1.1.3-pam_console-1.patch &&
autoreconf -v &&
CC="gcc ${BUILDN32}" ./configure --libdir=/usr/lib32 --sbindir=/lib32/security \
--enable-securedir=/lib32/security \
--docdir=/usr/share/doc/Linux-PAM-1.1.3 \
--enable-shared \
--enable-read-both-confs &&
make
Install the package:
make install && chmod -v 4755 /lib32/security/unix_chkpwd && mv -v /lib32/security/pam_tally /sbin && mv -v /usr/lib32/libpam*.so.0* /lib32 && LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib32/$LIBNAME /usr/lib32/libpam.so && LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib32/$LIBNAME /usr/lib32/libpamc.so && LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib32/$LIBNAME /usr/lib32/libpam_misc.so
64Bit
Configure and compile the package:
patch -Np1 -i ../Linux-PAM-1.1.3-pam_console-1.patch &&
autoreconf -v &&
CC="gcc ${BUILD64}" ./configure --libdir=/usr/lib64 --sbindir=/lib64/security \
--enable-securedir=/lib64/security \
--docdir=/usr/share/doc/Linux-PAM-1.1.3 \
--enable-shared \
--enable-read-both-confs &&
make
Install the package:
make install && chmod -v 4755 /lib64/security/unix_chkpwd && mv -v /lib64/security/pam_tally /sbin && mv -v /usr/lib64/libpam*.so.0* /lib64 && LIBNAME=$(cat libpam/libpam.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib64/$LIBNAME /usr/lib64/libpam.so && LIBNAME=$(cat libpamc/libpamc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib64/$LIBNAME /usr/lib64/libpamc.so && LIBNAME=$(cat libpam_misc/libpam_misc.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") && ln -svf ../../lib64/$LIBNAME /usr/lib64/libpam_misc.so
Configuring pam_console
The altering of device permissions is unnecessary. In this case, only the console locking actions are needed. Replace one of the pam_console configuration files to achieve this.
cat > /etc/security/console.handlers << "EOF" # Begin /etc/security/console.handlers console consoledevs tty[0-9][0-9]* vc/[0-9][0-9]* :[0-9]\.[0-9] :[0-9] EOF
Contents
Note: The files that come with pam_console need to be added to this list.
| Installed Programs: | pam_tally |
|---|---|
| Installed Libraries: | libpam.{so,a}, libpamc.{so,a}, libpam_misc.{so,a} |
| Installed Directories: | /etc/pam.d, /etc/security, /lib/security, /usr/include/security |
Short Descriptions
| pam_tally | is used to view or manipulate the faillog file. |
|---|---|
| libpam.{so,a} | provide the interfaces between applications and the PAM modules. |