36.3. Konfiguration von PAM-Modulen

Einige PAM-Module können konfiguriert werden. Die entsprechenden Konfigurationsdateien sind im Verzeichnis /etc/security gespeichert. In diesem Abschnitt werden die für das sshd-Beispiel relevanten Konfigurationsdateien, pam_unix2.conf, pam_env.conf, pam_pwcheck.conf und limits.conf, kurz beschrieben.

36.3.1. pam_unix2.conf

Die herkömmliche passwortbasierte Authentifizierungsmethode wird durch das PAM-Modul pam_unix2 gesteuert. Hiermit können die erforderlichen Daten aus /etc/passwd, /etc/shadow, NIS-Maps, NIS+-Tabellen oder aus einer LDAP-Datenbank gelesen werden. Das Verhalten des Moduls kann durch die Konfiguration der PAM-Optionen der einzelnen Anwendung selbst oder global durch Bearbeiten der Datei /etc/security/pam_unix2.conf beeinflusst werden. Eine ganz grundlegende Konfigurationsdatei für das Modul wird in Beispiel 36.6, „pam_unix2.conf“ dargestellt.

Beispiel 36.6. pam_unix2.conf

auth:   nullok
account:
password:       nullok
session:        none

Mit der Option nullok für die Modultypen auth und password wird angegeben, dass leere Passwörter für den entsprechenden Accounttyp zulässig sind. Die Benutzer sind zudem berechtigt, die Passwörter für ihre Accounts zu ändern. Die Option none für den Modultyp session gibt an, dass für dieses Modul keine Meldungen protokolliert werden sollen (dies ist die Standardeinstellung). Informationen zu zusätzlichen Konfigurationsoptionen erhalten Sie in den Kommentaren in der Datei selbst und auf der man page von pam_unix2(8).

36.3.2. pam_env.conf

Diese Datei kann verwendet werden, um eine standardisierte Umgebung für Benutzer zu definieren, die beim Aufrufen des pam_env-Moduls festgelegt wird. Hiermit legen Sie Umgebungsvariablen mit folgender Syntax fest:

VARIABLE  [DEFAULT=[value]]  [OVERRIDE=[value]]
VARIABLE

Name der festzulegenden Umgebungsvariablen.

[DEFAULT=[value]]

Der Standardwert, den der Administrator festlegen möchte.

[OVERRIDE=[value]]

Werte, die von pam_env abgefragt und festgelegt werden können und die den Standardwert außer Kraft setzen.

Ein typisches Beispiel für eine Verwendungsmöglichkeit von pam_env ist die Anpassung der Variable DISPLAY, die immer dann geändert wird, wenn eine entfernte Anmeldung stattfindet. Dies wird in Beispiel 36.7, „pam_env.conf“ dargestellt.

Beispiel 36.7. pam_env.conf

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

In der ersten Zeile wird der Wert der Variable REMOTEHOST auf localhost gesetzt, der immer dann verwendet wird, wenn mit pam_env kein anderer Wert bestimmt werden kann. Die Variable DISPLAY hingegen enthält den Wert REMOTEHOST. Weitere Informationen hierzu finden Sie in den Kommentaren der Datei /etc/security/pam_env.conf.

36.3.3. pam_pwcheck.conf

Diese Konfigurationsdatei ist für das Modul pam_pwcheck bestimmt, das daraus Optionen für alle Module vom Typ password einliest. Die in dieser Datei gespeicherten Einstellungen haben Vorrang vor den PAM-Einstellungen der einzelnen Anwendungen. Wenn keine anwendungsspezifischen Einstellungen definiert wurden, verwendet die Anwendung die globalen Einstellungen. Über Beispiel 36.8, „pam_pwcheck.conf“ erhält pam_pwcheck die Anweisung, leere Passwörter und die Änderung von Passwörtern zuzulassen. Weitere Optionen für das Modul werden der Datei /etc/security/pam_pwcheck.conf beschrieben.

Beispiel 36.8. pam_pwcheck.conf

password:    nullok

36.3.4. limits.conf

Systemlimits können auf Benutzer- oder Gruppenbasis in der Datei limits.conf festgelegt werden, die vom Modul pam_limits gelesen wird. In der Datei können Sie Hardlimits, die niemals überschritten werden dürfen, und Softlimits festlegen, die vorübergehend überschritten werden können. Informationen zur Syntax und zu den verfügbaren Optionen erhalten Sie in den in der Datei enthaltenen Kommentaren.