PAM:Module
Aus KissDoc
Inhaltsverzeichnis |
Allgemein
Die PAM-Module befinden sich normalerweise in /lib/security/ und beginnen meistens auch mit pam_* . Einige Standardmodule wie pam_unix.so sind von Hause aus dabei, andere können belibig nachinstalliert werden.
SSH
pam_abl
Das Modul pam_abl von Andy Armstrong ist für (oder besser gegen) unerwünschte SSH-User gedacht. Mit abl (auto black list) können mit Hilfe einer BlackList bestimmte User, Ip-Adressen, usw. für eine bestimmte Zeit ausgegrenzt werden.
Das Modul ist derzeit (2006-01-25) noch nicht als Debian-Package verfügbar und muss demzufolge selbst kompiliert werden. In der iX (Ausgabe 2/2006) stand dazu auch ein netter Artikel.
Installation
- installieren folgender Packages (werden zum Kompilieren benötigt):
apt-get install libpam0g-dev libdb4.4-dev - Quellen entpacken und installieren:
make; make install - Rechte des Moduls besser setzen:
chmod 644 /lib/security/pam_abl.so - config kopieren:
cp conf/pam_abl.con /etc/security/ - config anpassen: siehe doku
-
/etc/pam.d/sshanpassen:auth required /lib/security/pam_abl.so config=/etc/security/pam_abl.conf - PAM in
/etc/ssh/sshd_configaktivieren:UsePAM yesund neu starten - die aktuell statusinformationen befiunden sich in
/var/lib/abl, am besten das Programmpam_ablverwenden
Zur Zeit verhindert allerdings ein Bug (debian und siurceforge) im openssh das aktualisieren der Datenbank in /var/lib/abl
pam_shield
Das Modul pam_shield von Walter de Jong nutzt ein null-routing zum Blocken ungebetener Gäste (Anzeigen mit: /sbin/ip route list). Eingebunden wird es im PAM-Mechanismus als Modul /lib/security/pam_shield.so, seine Konfiguration befindet sich in /etc/security/shield.conf.
Das Daten befindet sich in /var/lib/pam_shield/db, dabei handelt es sich um eine gdbm Datenbank.
Zum setzen wird das Programm /usr/sbin/shield-trigger.sh verwendet. Das zurücksetzen wird per cron gesteuert
(/etc/cron.daily/pam-shield), welches das Programm /usr/sbin/shield-purge verwendet.
Installation
- Quellen entpacken und installieren:
make; make install(libpam0g-devundlibgdbm-devwerden benötigt) - Rechte des Moduls besser setzen:
chmod 644 /lib/security/pam_shield.so -
/etc/pam.d/sshanpassen:auth optional pam_shield.so
Hinweis: Eintrag nicht zentral in die /etc/pam.d/common-auth setzen, sonst geht kein su mehr !!!
Änderungen am Dateisystem:
- one PAM module: /lib/security/pam_shield.so
- one binary: /usr/sbin/shield-purge
- one shell script: /usr/sbin/shield-trigger.sh
- one cron script: /etc/cron.daily/pam-shield
- one config file: /etc/security/shield.conf
- a gdbm database: /var/lib/pam_shield/db
Achtung: Warum auch immer ... unter Debian gibt es einen Fehler in der Script-Benennung in /etc/security/shield.conf. Wenn pam_shield einen host blocken möchte, wird das Script /usr/sbin/shield-trigger aufgerufen, welches bei uns aber /usr/sbin/shield-trigger.sh heisst (Endung .sh). Abhilfe: den Eintrag ändern oder einen entsprechenden Symlink anlegen.
zu klären
Seltsamerweise wird nur in die db geschrieben, wenn in der shield.conf die Optionen allow_missing_dns und allow_missing_reverse auf yes stehen.
Apache
apache mod_auth_pam

