6.50. Shadow-4.0.15

Das Paket Shadow enthält Programme zur sicheren Verwaltung von Kennwörtern.

Geschätzte Kompilierzeit: 0.3 SBU
Ungefähr benötigter Festplattenplatz: 18.6 MB

6.50.1. Installation von Shadow

[Anmerkung]

Anmerkung

Wenn Sie sichere Passwörter erzwingen möchten, sollten Sie vor der Installation von Shadow unter http://www.linuxfromscratch.org/blfs/view/svn/postlfs/cracklib.html nachlesen und Cracklib installieren. Fügen Sie dann den Parameter --with-libcrack zu dem folgenden configure-Kommando hinzu:

Bereiten Sie Shadow zum Kompilieren vor:

./configure --libdir=/lib --enable-shared --without-selinux

Die Bedeutung der configure-Parameter:

--without-selinux

Die Unterstützung für selinux ist in der Voreinstellung aktiviert, jedoch ist selinx nicht Teil eines Standard-LFS-Systems. Das configure-Skript würde ohne diesen Parameter mit einem Fehler abbrechen.

Verhindern Sie die Installation des Programmes groups und der zugehörigen Hilfeseite, da Coreutils eine bessere Version enthält:

sed -i 's/groups$(EXEEXT) //' src/Makefile
find man -name Makefile -exec sed -i '/groups/d' {} \;

Verhindern Sie die Installation der chinesischen und koreanischen Hilfeseiten, weil Man-DB sie nicht korrekt anzeigen kann:

sed -i -e 's/ ko//' -e 's/ zh_CN zh_TW//' man/Makefile

Shadow enthält weitere Hilfeseiten im UTF-8-Format. Man-DB kann diese in der empfohlenen Kodierung anzeigen, wenn Sie das Skript convert-mans verwenden, welches Sie erst kürzlich installiert haben.

 for i in de es fi fr id it pt_BR; do
    convert-mans UTF-8 ISO-8859-1 man/${i}/*.?
done

for i in cs hu pl; do
    convert-mans UTF-8 ISO-8859-2 man/${i}/*.?
done

convert-mans UTF-8 EUC-JP man/ja/*.?
convert-mans UTF-8 KOI8-R man/ru/*.?
convert-mans UTF-8 ISO-8859-9 man/tr/*.?

Kompilieren Sie das Paket:

make

Dieses Paket enthält keine Testsuite.

Installieren Sie das Paket:

make install

Shadow benutzt zwei Dateien zur Einrichtung der systemweiten Authentifizierungseinstellungen. Installieren Sie diese beiden Konfigurationsdateien:

cp -v etc/{limits,login.access} /etc

Sie sollten die voreingestellte crypt-Methode auf MD5 ändern, welche sicherer ist. Außerdem ermöglicht sie Passwörter mit mehr als 8 Zeichen. Desweiteren müssen Sie den alten Standort der Benutzermailboxen von /var/spool/mail nach /var/mail ändern. Das erledigen Sie einfach, indem Sie die Konfigurationsdatei gleich beim Kopieren an die richtige Stelle ändern (benutzen Sie am besten „Kopieren und Einfügen“ um diesen Befehl auszuführen):

sed -e's@#MD5_CRYPT_ENAB.no@MD5_CRYPT_ENAB yes@' \
    -e 's@/var/spool/mail@/var/mail@' \
    etc/login.defs > /etc/login.defs
[Anmerkung]

Anmerkung

Wenn Sie Shadow mit Unterstützung für Cracklib installieren, dann geben Sie das folgende sed-Kommando ein:

sed -i 's@DICTPATH.*@DICTPATH\t/lib/cracklib/pw_dict@' \
    /etc/login.defs

Verschieben Sie ein Programm an die korrekte Stelle:

mv -v /usr/bin/passwd /bin

Verschieben Sie Shadow's Bibliotheken an eine bessere Stelle:

mv -v /lib/libshadow.*a /usr/lib
rm -v /lib/libshadow.so
ln -sfv ../../lib/libshadow.so.0 /usr/lib/libshadow.so

Die Option -D zu useradd benötigt zur korrekten Funktion diesen Ordner:

mkdir -v /etc/default

6.50.2. Einrichten von Shadow

Dieses Paket enthält Werkzeuge zum Bearbeiten, Hinzufügen und Löschen von Benutzerpasswörtern. Wir werden hier nicht erläutern, was genau password shadowing bedeutet. Eine vollständige Erklärung finden Sie in der Datei doc/HOWTO in der entpackten Shadow-Ordnerstruktur. Eines gilt es allerdings zu beachten: Programme, die Passwörter überprüfen müssen (z. B. xdm, ftp und pop3 Server), müssen shadow-konform sein. Das heißt, sie müssen mit Shadow-Passwörtern umgehen können.

Um Shadow-Passwörter zu aktivieren, benutzen Sie dieses Kommando:

pwconv

Und um Shadow-Gruppenpasswörter zu aktivieren, benutzen Sie dieses Kommando:

grpconv

6.50.3. Vergeben des Passworts für root

Wählen Sie ein Kennwort für den Benutzer root und setzen Sie es mit dem Kommando:

passwd root

6.50.4. Inhalt von Shadow

Installierte Programme: chage, chfn, chgpasswd, chpasswd, chsh, expiry, faillog, gpasswd, groupadd, groupdel, groupmod, grpck, grpconv, grpunconv, lastlog, login, logoutd, newgrp, newusers, nologin, passwd, pwck, pwconv, pwunconv, sg (Link auf newgrp), su, useradd, userdel, usermod, vigr (Link auf vipw) und vipw
Installierte Bibliotheken: libshadow.{a,so}

Kurze Beschreibungen

chage

Ändert die maximale Anzahl von Tagen zwischen zwei nötigen Passwortänderungen.

chfn

Wird zum Ändern des vollständigen Namens und weiterer Informationen eines Benutzers benutzt.

chgpasswd

Wird benutzt, um das Passwort mehrerer Gruppen in einem Durchlauf zu ändern.

chpasswd

Wird benutzt, um das Passwort mehrerer Benutzer in einem Durchlauf zu ändern.

chsh

Wird benutzt, um die voreingestellte Shell eines Benutzers zu ändern.

expiry

Prüft, ob ein Kennwort abgelaufen ist und setzt eine entsprechende Regelung durch.

faillog

Wird zum Untersuchen der Logdatei nach fehlgeschlagenen Logins, zum Setzen einer maximalen Fehlerzahl vor der Sperrung eines Kontos oder um den Zähler zurückzusetzen verwendet.

gpasswd

Wird zum Hinzufügen und Löschen von Mitgliedern in Gruppen verwendet.

groupadd

Erzeugt eine Gruppe mit dem angegebenen Namen.

groupdel

Löscht eine Gruppe mit dem angegebenen Namen.

groupmod

Ändert den Namen oder die GID einer Gruppe.

grpck

Prüft die Integrität der Gruppen-Dateien /etc/group und /etc/gshadow.

grpconv

Erzeugt oder aktualisiert die group-Datei von Shadow aus der normalen group-Datei.

grpunconv

Aktualisiert /etc/group aus /etc/gshadow und löscht die letztere dann.

lastlog

Berichtet über die letzten Anmeldungen aller oder eines bestimmten Benutzers.

login

Wird vom System benutzt, um einen Benutzer anzumelden.

logoutd

Ein Daemon, der Beschränkungen auf die Login-Zeit und -Ports durchsetzt.

newgrp

Wird zum Ändern der aktuellen GID in einer Login-Sitzung benutzt.

newusers

Wird zum Erzeugen oder Aktualisieren einer Serie von Benutzerkonten in einem Durchlauf verwendet.

nologin

Zeigt einen Hinweis an, dass ein Benutzerkonto nicht verfügbar ist. Dies ist als Standard-Shell für deaktivierte Benutzerkonten gedacht.

passwd

Ändert das Passwort für einen Benutzer oder eine Gruppe.

pwck

Prüft die Integrität der Passwort-Dateien /etc/passwd und /etc/shadow.

pwconv

Erzeugt oder aktualisiert die Shadow-Passwort-Datei aus der normalen Passwort-Datei.

pwunconv

Aktualisiert /etc/passwd aus /etc/shadow und löscht letztere danach.

sg

Führt ein Kommando mit der angegebenen GID aus.

su

Führt eine Shell mit geänderter Benutzer- und Gruppen-ID aus.

useradd

Erzeugt einen neuen Benutzer mit dem angegebenen Namen oder aktualisiert die Vorgaben für neue Benutzer.

userdel

Löscht das angegebene Benutzerkonto.

usermod

Ändert Loginname, UID, Shell, Gruppe, Persönlichen Ordner und ähnliches für einen Benutzer.

vigr

Kann zum Bearbeiten von /etc/group- oder /etc/gshadow-Dateien benutzt werden.

vipw

Kann zum Bearbeiten von /etc/passwd- oder /etc/shadow-Dateien benutzt werden.

libshadow

Enthält Funktionen, die von den meisten der Programme in diesem Paket verwendet werden.