21.3. Konfiguration der PAM-Module

Die Arbeitsweise mancher PAM-Module ist konfigurierbar. Die dazugehörigen Konfigurationsdateien befinden sich unter /etc/security. Dieser Abschnitt geht kurz auf die im sshd Beispiel verwendeten Dateien ein. Dies sind pam_unix2.conf, pam_env.conf, pam_pwcheck.conf und limits.conf.

21.3.1. pam_unix2.conf

Für die traditionelle Passwort-Authentifizierung wird das PAM Modul pam_unix2 verwendet. Es kann seine Daten aus /etc/passwd, /etc/shadow, über NIS-Maps, über NIS+-Tabellen oder über eine LDAP-Datenbank beziehen. Diesem Modul können seine Konfigurationsoptionen entweder individuell in der PAM-Konfiguration der Anwendung übergeben werden oder global in /etc/security/pam_unix2.conf. Im einfachsten Fall sieht die Datei wie in Beispiel 21.6, „pam_unix2.conf“ aus:

Beispiel 21.6. pam_unix2.conf

auth:   nullok
account:
password:       nullok
session:        none

Die Option nullok für die auth und password Modultypen besagt, dass leere Passwörter für diese Art des Accounts zulässig sind. Der Benutzer hat das Recht, die Passwörter zu ändern. Mittels der Option none für den session Typ wird festgelegt, dass für diesen Modultyp keine Meldungen geloggt werden (Standardeinstellung). Weitere Konfigurationsoptionen können Sie den Kommentaren in dieser Datei oder der Manualpage von pam_unix2(8) entnehmen.

21.3.2. pam_env.conf

Diese Datei kann verwendet werden, um Benutzern nach Aufruf des pam_env-Moduls eine standardisierte Umgebung vorzugeben. Die Syntax zum Setzen der Umgebungsvariablen ist:

VARIABLE  [DEFAULT=[wert]]  [OVERRIDE=[wert]]
VARIABLE

Bezeichner der Umgebungsvariable, die gesetzt werden soll

[DEFAULT=[wert]]

Standardwert, den der Administrator als Standard vorgeben möchte

[OVERRIDE=[wert]]

Werte, die pam_env ermitteln und einsetzen kann, um den Standardwert zu überschreiben

Ein berühmtes Beispiel, wie pam_env eingesetzt werden kann, ist die Anpassung der DISPLAY-Variablen für Login übers Netz, wie in Beispiel 21.7, „pam_env.conf“ gezeigt:

Beispiel 21.7. pam_env.conf

REMOTEHOST     DEFAULT=localhost OVERRIDE=@{PAM_RHOST}
DISPLAY        DEFAULT=${REMOTEHOST}:0.0 OVERRIDE=${DISPLAY}

Die erste Zeile setzt den Wert der Variablen REMOTEHOST auf localhost, so pam_env nicht einen anderen Wert ermitteln kann und zurückgibt. Die Variable DISPLAY nutzt den Variablenwert von REMOTEHOST. Mehr Informationen erhalten Sie in den Kommentaren der /etc/security/pam_env.conf-Datei.

21.3.3. pam_pwcheck.conf

Aus dieser Datei holt sich das Modul pam_pwcheck die Optionen für alle Module vom Typ password. Die hier gespeicherte Einstellung wird vor derjenigen in der PAM-Konfiguration der Anwendung gelesen. Wenn für die Anwendung keine individuelle Einstellung vorgenommen wurde, wird die globale Einstellung verwendet. Beispiel 21.8, „pam_pwcheck.conf“ weist pam_pwcheck an, leere Passwörter und das Ändern von Passwörtern zu erlauben. Weitere Optionen finden Sie in der Datei /etc/security/pam_pwcheck.conf.

Beispiel 21.8. pam_pwcheck.conf

password:    nullok

21.3.4. limits.conf

Das Modul pam_limits liest die Systemlimits für bestimmte Benutzer oder Gruppen aus der Datei limits.conf aus. Theoretisch besteht hier die Möglichkeit, harte (keine Überschreitung möglich) und weiche (temporäre Überschreitung erlaubt) Limits auf Systemressourcen zu setzen. Die Syntax und möglichen Optionen entnehmen Sie der Datei selbst.


SUSE LINUX Administrationshandbuch 9.3