Le paquetage shadow contient la plupart des programmes de remplacement aux programmes accédant aux mots de passe. Mais toutefois, il reste quelques programmes présents en général sur la plupart des systèmes qui nécessitent une mise-à-jour pour fonctionner correctement.
Il existe un paquetage avec des binaires pré-compilés pour fonctionner avec un support des mots de passe shadow: ftp://ftp.texas.net/pub/unix/linux/shadow/shad-bin.tar.gz
Cet ensemble contient les binaires pour: ftpd, pop2d, pop3d, mesg, wall, finger, et
xdm
. Je ne vois pas pourquoi finger
, wall
ou
mesg
a besoin d'accéder aux mots de passe. De plus, le code source n'est pas inclus dans
l'archive, c'est pour cela que je ne vous recommande pas ce paquetage
La suite de cette section concerne la mise-à-jour des programmes:
adduser
, wu_ftpd
, ftpd
, pop3d
,
xlock
et sudo
Reportez vous à la section "ajouter le support des mots de passe Shadow à un programme en C" pour vous aider à mettre à jour les programmes qui nécessitent l'accès aux mots de passes (Sans que le programme soit SUID root ou SGID shadow).
Les distributions Slackware (et probablement d'autres) contiennent
un programme interactif /bin/adduser
permettant d'ajouter
facilement des utilisateurs. Une version Shadow de ce programme peut
être trouvée sur:
ftp://sunsite.unc.edu/pub/Linux/ system/Admin/accounts/adduser.shadow-1.4.tar.gz
.
L'installation est aisée:
# tar -xzvf adduser.shadow-1.4.tar.gz
# cd adduser.shadow.1.4
# make adduser
# chmod 700 adduser
# make install
La plupart des distributions linux incluent le serveur wu_ftpd
. Si votre
distribution n'est pas ''native shadow'', votre serveur wu_ftpd
n'est pas
compilé pour le support shadow. wu_ftpd
est lancé à partir de inetd/tcpd
dans un process root
. Si vous utilisez un ancien démon wu_ftpd
,
vous devrez de toute façon le mettre à jour car les vieilles versions
ont un bug, le compte root pouvait être compromis (pour plus d'informations, consultez la page
web:
http://bach.cis.temple.edu/linux/linux-security/Linux- Security-FAQ/Linux-wu.ftpd-2.4-Update.html
).
Heureusement, la seule démarche à faire est de récupérer les sources et de les compiler avec l'option shadow.
Le serveur wu_ftpd
peut être récupéré sur Sunsite:
wu-ftp-2.4-fixed.tar.gz
Une fois l'archive récupérée, placez là dans /usr/src
et tapez:
# cd /usr/src
# tar -xzvf wu-ftpd-2.4-fixed.tar.gz
# cd wu-ftpd-2.4-fixed
# cp ./src/config/config.lnx.shadow ./src/config/config.lnx
# ./build lnx
# cp /usr/sbin/wu.ftpd /usr/sbin/wu.ftpd.old
# cp ./bin/ftpd /usr/sbin/wu.ftpd
Ceci utilise le fichier de configuration Linux shadow, compile le tout et installe le serveur.
Sur mon système basé sur une Slackware 3.0 j'ai du faire ces modifications
avant de lancer build:
build
:
# cd /usr/include/netinet
# ln -s in_systm.h in_system.h
# cd -
Si vous utilisez le serveur ftpd standard
, tout d'abord,
je vous recommande de passer au serveur wu_ftpd
, mis à part
les bugs cités précédemment, il est considéré comme plus sécurisé.
Si vous insistez et voulez garder la version standard - ou bien vous avez besoin du support NIS - le fichier est sur Sunsite: ftpd-shadow-nis.tgz
Si vous utilisez le 3eme Post Office Protocol (POP3), vous devrez
recompiler le programme pop3d
. pop3d
est normalement lancé
par inet2/tcpd
dans un process root
.
Il y a deux versions disponibles sur Sunsite: pop3d-1.00.4.linux.shadow.tar.gz et pop3d+shadow+elf.tar.gz
Les deux versions sont très simple à installer.
Si vous utilisez X-window
et que vous ne mettez pas à jour
xlock
, vous devrez utiliser CTRL-ALT-Fx
pour vous déplacer
sur un autre tty, vous loguer et tuer le process xlock
(ou utiliser
CTRL-ALT-BS pour tuer le serveur X). Mais par chance, la mise à jour d'
xlock
n'est vraiment pas compliquée.
Si vous utilisez XFree86 Versions 3.x.x, c'est probablement
xlockmore
qui est installé (c'est un superbe économiseur
d'écran et un système de lock).
Ce paquetage supporte shadow après recompilation. Si vous utilisez une
vielle version xlock
, je vous recommande celle-ci.
xlockmore-3.5.tgz
disponible sur Sunsite:
ftp://sunsite.unc.edu/pub/Linux/X11/xutils/screen-savers/ xlockmore-3.5.tgz
En gros, voilà comment procéder:
Récupérez xlockmore-3.5.tgz
et copiez le dans /usr/src
,
décompressez le:
# tar -xzvf xlockmore-3.5.tgz
Editez le fichier: /usr/X11R6/lib/X11/config/linux.cf
, et changez
la ligne:
#define HasShadowPasswd NO
en
#define HasShadowPasswd YES
Alors, construisez les exécutables:
# cd /usr/src/xlockmore
# xmkmf
# make depend
# make
Maintenant, déplacez le tout vers le bon endroit, et mettez-à-jour les propriétaires et les permissions de fichier:
# cp xlock /usr/X11R6/bin/
# cp XLock /var/X11R6/lib/app-defaults/
# chown root.shadow /usr/X11R6/bin/xlock
# chmod 2755 /usr/X11R6/bin/xlock
# chown root.shadow /etc/shadow
# chmod 640 /etc/shadow
Votre xlock fonctionnera désormais correctement.
Le programme sudo
permet à l'administrateur système de laisser des
utilisateurs lancer des programmes qui normalement nécessiteraient les
permissions root. C'est intéressant car ça permet à l'administrateur de
se limiter lui même l'accès root pendant qu'il permet aux utilisateurs de
faire des opérations comme monter un disque.
sudo
a besoin d'accéder aux mots de passe car il vérifie le mot de passe
des utilisateurs quand il est invoqué.sudo
fonctionne déjà SUID root, donc
accéder au fichier /etc/shadow
n'est pas un problème.
la mise à jour sudo
pour shadow est disponible:
ftp://sunsite.unc.edu/pub/Linux/system/Admin/sudo-1.2-shadow.tgz
Cette version a été prévue pour fonctionner avec des mots de passe shadow,
donc la seule chose à faire est de recompiler le tout (mettez le dans
/usr/src
):
# cd /usr/src
# tar -xzvf sudo-1.2-shadow.tgz
# cd sudo-1.2-shadow
# make all
# make install
imapd est un serveur email tout comme pop3d. imapd est compris dans l'ensemble Email pine. La documentation qui est fournie avec le paquetage prétend que la configuration par défaut pour un système linux fonctionne avec shadow. Or j'ai constaté que ce n'est pas vrai. De plus, je n'ai pas encore compris comment fonctionne la combinaison Makefile / Script Build et je n'ai pas réussi à le modifier pour qu'il supporte le format shadow.
Si quelqu'un arrive à faire cette mise-à-jour, merci de m'envoyer un email, je l'incluerai ici.
Le serveur pppd peut être configuré selon de nombreuses méthodes
d'authentification: Password Authentifocation Protocol (PAP) et
Cryptographic Authentification Protocol (CHAP). Le serveur pppd utilise
en général les mots de passe stockés dans le fichier
/etc/ppp/chap-secrets
et /etc/ppp/pap-secret
. Si vous utilisez cette méthode,
ce n'est pas la peine de faire de mise-à-jour.
pppd vous permet aussi d'utiliser le paramètre login (soit en ligne de
commande, soit dans le fichier de configuration). Si l'option login
est
utilisée, alors pppd utilisera pour le PAP le fichier /etc/passwd
pour le nom d'utilisateur et le mot de passe. Bien sur ça ne fonctionnera plus
sur un système mots de passe shadow. Pour pppd-1.2.1d, un ajout de code est
nécesssaire.
L'exemple donné dans la prochaine section est la modification du code de
pppd-1.2.1d
(une vieille version de pppd).
pppd-2.2.0
contient déjà le support shadow.
Chapitre suivant, Chapitre Précédent
Table des matières de ce chapitre, Table des matières générale
Début du document, Début de ce chapitre