Introduksjon til Linux PAM
Linux PAM pakken inneholder
pluggbare autentiseringsmoduler brukt av den lokale
systemadministratoren for å kontrollere hvordan
applikasjonsprogrammer autentiseres brukere.
Notat
Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen
pakker riktig hvis LFS eller avhengigheter har blitt oppdatert
siden den siste stabile versjonene av bøkene.
Pakkeinformasjon
Ytterligere Nedlastinger
Linux PAM Avhengigheter
Valgfri
libnsl-2.0.1, libtirpc-1.3.6, rpcsvc-proto-1.4.4, Berkeley
DB (deprecated), libaudit, og
libeconf
Valgfri (For å bygge Dokumentasjonen og Manualsider)
docbook-xml-5.0, docbook-xsl-ns-1.79.2, fop-2.10 (for PDF
format), libxslt-1.1.42, og Lynx-2.9.2 (for ren
tekstformat)
Notat
Shadow-4.16.0 må
installeres på nytt og rekonfigurert etter installasjon og
konfigurering av Linux PAM.
Med Linux-PAM-1.4.0 og høyere er ikke pam_cracklib modulen
installert som standard. Bruk libpwquality-1.4.5 å håndheve sterke
passord.
Kjernekonfigurasjon
For PAM modulen pam_loginuid.so
(henvist av PAM konfigurasjonsfilen system-session
hvis elogind-255.5 er bygget senere) for å
virke, en kjernekonfigurasjonsparameter må angis, ellers vil
modulen bare gjøre ingenting:
General setup --->
[*] Auditing support [AUDIT]
Installasjon av Linux PAM
Hvis du har installert docbook-xml-5.0, docbook-xsl-ns-1.79.2, libxslt-1.1.42, og Lynx-2.9.2 og du
ønsker å generere ren tekstformat av dokumentasjonen, endre
meson.build
til å bruke Lynx-2.9.2 i stedet for W3m eller Elinks som BLFS
ikke gir:
sed -e "s/'elinks'/'lynx'/" \
-e "s/'-no-numbering', '-no-references'/ \
'-force-html', '-nonumbers', '-stdin'/" \
-i meson.build
Kompiler og link Linux PAM med å
kjøre følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-D docdir=/usr/share/doc/Linux-PAM-1.7.0 &&
ninja
For å teste resultatene, må en passende /etc/pam.d/other
konfigurasjonsfil eksistere.
Reinstallering eller Oppgradering av Linux PAM
Hvis du har et system med Linux PAM installert og som fungerer,
vær forsiktig når du endrer filene i /etc/pam.d
, siden systemet ditt kan bli helt
ubrukelig. Hvis du vil kjøre testene, trenger du ikke å lage en
annen /etc/pam.d/other
fil.
Eksisterende fil kan brukes til testene.
Du også være klar over at make
install overskriver konfigurasjonsfilene i
/etc/security
i tillegg til
/etc/environment
. Hvis du har
endret disse filene, sørg for å sikkerhetskopiere dem.
For førstegangsinstallasjon oppretter du en konfigurasjonsfil ved å
kjøre følgende kommandoer som root
bruker:
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
Kjør nå testene ved å kjøre ninja
test. Pass på at testene ikke produserer noe feil
før du fortsetter installasjonen.
For førstegangsinstallasjon fjerner du konfigurasjonsfilen
opprettet tidligere ved å utstede følgende kommando som
root
bruker:
rm -fv /etc/pam.d/other
Nå, som root
bruker:
ninja install &&
chmod -v 4755 /usr/sbin/unix_chkpwd
Fjern nå en unødvendig mappe som root
:
rm -rf /usr/lib/systemd
Hvis du ikke har de valgfrie avhengighetene installert for å bygge
dokumentasjonen og lastet ned den valgfrie forhåndsbygde
dokumentasjonen, igjen som root
bruker:
tar -C / -xvf ../../Linux-PAM-1.7.0-docs.tar.xz
Konfigurere Linux-PAM
Konfigurasjonsfiler
/etc/security/*
og /etc/pam.d/*
Konfigurasjonsinformasjon
Konfigurasjonsinformasjon er plassert i /etc/pam.d/
. Her er en eksempelfil:
# 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
Lag nå noen generiske konfigurasjonsfiler. Som root
bruker:
install -vdm755 /etc/pam.d &&
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
cat > /etc/pam.d/system-password << "EOF"
# Begin /etc/pam.d/system-password
# use yescrypt 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 yescrypt shadow try_first_pass
# End /etc/pam.d/system-password
EOF
Hvis du ønsker å aktivere sterk passordstøtte, installer
libpwquality-1.4.5, og følg
instruksjoner på siden for å konfigurere pam_pwquality PAM
modulen med sterk passordstøtte.
Deretter legger du til en restriktiv /etc/pam.d/other
konfigurasjonsfil. Med denne
filen vil programmer som er klar over PAM ikke kjøre med mindre
en konfigurasjonsfil spesifikt for det programmet finnes.
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
PAM man side (man pam) gir et godt
utgangspunkt for å lære om de flere feltene og tillatte
oppføringer. Linux-PAM System Administrators' Guide på
/usr/share/doc/Linux-PAM-1.7.0/Linux-PAM_SAG.txt
anbefales for ytterligere informasjon.