Linux-PAM-1.2.1

Introduction à Linux-PAM

Le paquet Linux-PAM contient des Pluggable Authentication Modules (modules d'authentification connectables). C'est utile pour permettre à l'administrateur système local de choisir la façon dont s'authentifient les utilisateurs des applications.

Ce paquet est connu pour se construire correctement sur une plateforme LFS-7.8.

Informations sur le paquet

Optional Documentation

  • Téléchargement (HTTP) : http://linux-pam.org/library/Linux-PAM-1.2.1.tar.bz2

  • Somme de contrôle MD5 du téléchargement : 9dc53067556d2dd567808fd509519dd6

  • Taille du téléchargement : 1.3 Mo

  • Estimation de l'espace disque requis : 33 Mo (avec les tests)

  • Estimation du temps de construction : 0.3 SBU (avec les tests)

Téléchargements supplémentaires

Dépendances de Linux-PAM

Facultatives

Berkeley DB-6.1.26, CrackLib-2.9.6, libtirpc-0.3.2 et Prelude

Facultatives (Pour reconstruire la documentation)

DocBook XML-DTD-4.5, DocBook XSL Stylesheets-1.78.1, fop-2.0, libxslt-1.1.28 et w3m-0.5.3

Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/linux-pam

Installation de Linux-PAM

Si vous avez téléchargé la documentation, déballez l'archive tar en exécutant la commande suivante.

tar -xf ../Linux-PAM-1.2.0-docs.tar.bz2 --strip-components=1

Installez Linux-PAM en lançant les commandes suivantes :

./configure --prefix=/usr \
            --sysconfdir=/etc \
            --libdir=/usr/lib \
            --enable-securedir=/lib/security \
            --docdir=/usr/share/doc/Linux-PAM-1.2.1 &&
make

Pour tester les résultats, le fichier de configuration suivant /etc/pam.d/other doit exister.

[Attention]

Reinstallation ou mise à jour de Linux PAM

Si vous avez un système avec Linux PAM installé et en fonctionnement, soyez attentif quand vous modifiez les fichiers dans /etc/pam.d, car votre système peut devenir totalement inutilisable. Si vous souhaitez lancer les tests, vous n'avez pas besoin de créer un autre fichier /etc/pam.d/other. Le fichier installé peut être utilisé pour cela.

Vous devez aussi être attentif que make install écrase les fichiers de configuration dans /etc/security aussi bien que dans /etc/environment. Dans le cas ou vous avez modifié ces fichiers, soyez certain de les avoir sauvegardé.

Pour une première installation, créez le fichier de configuration en tapant les commandes suivantes en tant qu'utilisateur root:

install -v -m755 -d /etc/pam.d &&
cat > /etc/pam.d/other << "EOF"
auth     required       pam_deny.so
account  required       pam_deny.so
password required       pam_deny.so
session  required       pam_deny.so
EOF

Maintenant lancez les tests en exécutant make check.

Seulement dans le cas d'une première installation, supprimez le fichier de configuration créé plus haut en lançant la commande suivante en tant qu'utilisateur root :

rm -fv /etc/pam.d/*

Maintenant, en tant qu'utilisateur root :

make install &&
chmod -v 4755 /sbin/unix_chkpwd &&
for file in pam pam_misc pamc
do
  mv -v /usr/lib/lib${file}.so.* /lib &&
  ln -sfv ../../lib/$(readlink /usr/lib/lib${file}.so) /usr/lib/lib${file}.so
done

Explication des commandes

--enable-securedir=/lib/security: Ce paramètre initialise l'emplacement pour les modules PAM.

chmod -v 4755 /sbin/unix_chkpwd : Le programme d'aide unix_chkpwd doit être setuid afin que les processus non-root puissent accéder au fichier shadow.

Configuration de Linux-PAM

Fichiers de configuration

/etc/security/* and /etc/pam.d/*

Informations de configuration

Les informations de configuration se trouvent dans /etc/pam.d/. Voici ci-dessous un fichier exemple :

# Begin /etc/pam.d/other
auth            required        pam_unix.so     nullok
account         required        pam_unix.so
session         required        pam_unix.so
password        required        pam_unix.so     nullok
# End /etc/pam.d/other

Maintenant, initialisez certains fichiers génériques. En root:

cat > /etc/pam.d/system-account << "EOF"
# Begin /etc/pam.d/system-account
account   required    pam_unix.so
# End /etc/pam.d/system-account
EOF
cat > /etc/pam.d/system-auth << "EOF"
# Begin /etc/pam.d/system-auth
auth      required    pam_unix.so
# End /etc/pam.d/system-auth
EOF
cat > /etc/pam.d/system-session << "EOF"
# Begin /etc/pam.d/system-session
session   required    pam_unix.so
# End /etc/pam.d/system-session
EOF

Le fichier générique suivant dépend de l'installation de CrackLib-2.9.6. S'il est installé, utilisez:

cat > /etc/pam.d/system-password << "EOF"
# Begin /etc/pam.d/system-password
# check new passwords for strength (man pam_cracklib)
password  required    pam_cracklib.so   type=Linux retry=3 difok=5 \
                                        difignore=23 minlen=9 dcredit=1 \
                                        ucredit=1 lcredit=1 ocredit=1 \
                                        dictpath=/lib/cracklib/pw_dict
# use sha512 hash for encryption, use shadow, and use the
# authentication token (chosen password) set by pam_cracklib
# above (or any previous modules)
password  required    pam_unix.so       sha512 shadow use_authtok
# End /etc/pam.d/system-password
EOF
[Note]

Note

Dans la configuration par défaut, pam_cracklib permettra les mots de passe avec une case multiple d'au moins 6 caractères, avec la valeur minlen initialisée à 11. Vous devez revoir la page de man pam_cracklib(8) et déterminer si ces valeurs par défaut sont acceptable pour la sécurité de votre système.

Si CrackLib-2.9.6 n'est PAS installé, utilisez:

cat > /etc/pam.d/system-password << "EOF"
# Begin /etc/pam.d/system-password
# use sha512 hash for encryption, use shadow, and try to use any previously
# defined authentication token (chosen password) set by any prior module
password  required    pam_unix.so       sha512 shadow try_first_pass
# End /etc/pam.d/system-password
EOF

Maintenant ajoutez un fichier de configuration /etc/pam.d/other restrictif. Avec ce fichier, les programmes qui ne sont pas sous PAM ne pourront pas se lancer sans qu'un fichier de configration spécifique pour l'application ne soit créé.

cat > /etc/pam.d/other << "EOF"
# Begin /etc/pam.d/other
auth        required        pam_warn.so
auth        required        pam_deny.so
account     required        pam_warn.so
account     required        pam_deny.so
password    required        pam_warn.so
password    required        pam_deny.so
session     required        pam_warn.so
session     required        pam_deny.so
# End /etc/pam.d/other
EOF

La page de man de PAM (man pam) offre un bon point de départ pour des descriptions des champs et des entrées autorisées. Le Linux-PAM System Administrators' Guide (guide de l'administrateur système Linux-PAM) est recommandé pour des informations supplémentaires.

Référez vous à http://debian.securedservers.com/kernel/pub/linux/libs/pam/modules.html pour une liste des modules tiers disponibles.

[Important]

Important

Vous devriez maintenant réinstaller le paquet Shadow-4.2.1.

Contenu

Programmes Installés: mkhomedir_helper, pam_tally, pam_tally2, pam_timestamp_check, unix_chkpwd et unix_update
Bibliothèques installées: libpam.so, libpamc.so and libpam_misc.so
Répertoires installés: /etc/security, /lib/security, /usr/include/security et /usr/share/doc/Linux-PAM-1.2.1

Descriptions courtes

mkhomedir_helper

est un assistant binaire qui crée des répertoires home.

pam_tally

est utilisé pour interroger et manipuler le fichier compteur de login.

pam_tally2

est utilisé pour interroger et manipuler le fichier compteur de login sans certaines limitations de pam_tally.

pam_timestamp_check

est utilisé pour vérifier si l'horodatage par défaut est valide.

unix_chkpwd

est un assistant binaire qui vérifie le mot de passe de l'actuel utilisateur.

unix_update

est un assistant binaire qui met à jour le mot de passe d'un utilisateur donné.

libpam.so

fournit les interfaces entre les applications et les modules PAM.

Last updated on : 2012-09-23 22:08:11 +020