## ********Wichtige Syntaxelemente zum Kopieren*********** ## {{{#!Befehl}}} ## {{{#!Text}}} ## {{{#!Hinweis}}} ## {{{#!Warnung}}} ## [[Bild(./.png,,zentriert)]] ## **************Beginn des Artikels******************* [[InArbeit(15.08.2007,mreczio)]] ## [[Fehlerhaft(Begründung)]] [[Getestet(feisty)]] [[Fortgeschritten]] {{{#!Wissen * [1]: [:Pakete installieren: Installation von Programmen] [[Anchor(1)]] * [2]: [:Terminal: Ein Terminal öffnen] [[Anchor(2)]] * [3]: [:Editor: Einen Editor öffnen] [[Anchor(3)]] * [4]: [:Programme kompilieren: Pakete aus dem Quellcode erstellen] [[Anchor(4)]] * [5]: [:Packprogramme: Archive entpacken] [[Anchor(5)]] }}} ## [[TableOfContents(1)]] = Übersicht = PAM steht für '''[:Pluggable Authentication Modules:]'''. Durch die Nutzung von PAM-Modulen ist man in der Lage verschiedene Authentifizierungsmechanismen unter Linux zu implementieren. Zum Beispiel: Kerberus, LDAP, Public-Key-Authentication, Smartcards. Das hier vorgestellte PAM-Modul ermöglicht den Benutzer sich mit einem handelsüblichen USB-Stick am System zu Authentifizieren. = Wie Funktioniert pamusb? = Für die Authentifizierung wird auf dem USB-Stick im Verzeichnis '''.pamusb''' der öffentlichen Schlüssel '''benutzer.pad''' abgelegt. Im Homeverzeichnis des Benutzers liegt im Verzeichnis '''.pamusb''' der private Schlüssel '''MeinStick.pad'''. Für den Zugang wird noch der Hersteller des Sticks sowie die Produktbezeichnung und Seriennummer hinzugezogen. {{{#!Hinweis Ein einfache kopieren des Schlüssels reicht also nicht aus um Zugang zum System zu erhalten. }}} Das '''pamusb''' Modul arbeitet mit Applikationen die PAM unterstützen zusammen z.B. sudo, Login-Manager wie GDM und KDM, etc. = Installation = Für die Kompilierung von '''pamusb''' müssen folgende Pakete installiert werden: [[#1 1]] * '''libncurses5-dev''' * '''libreadline5-dev''' * '''libssl-dev''' * '''libpam0g-dev''' * '''libxml2-dev''' * '''libhal-storage-dev''' Die aktuelle Version von '''pamusb''' kann hier http://www.pamusb.org/ {de} heruntergeladen werden. Nach dem Entpacken [[#5 5]] von pamusb in das vom Paket erstellte Verzeichnis wechseln und mit {{{#!Befehl sudo make sudo make install }}} kompilieren und installieren.[[#4 4]] = Konfiguration = Um nun mit der Konfiguration fortzufahren, ist es notwendig den USB-Stick anzustöpseln und ein Terminal [[#2 2]] zu starten. == USB-Stick hinzufügen == Mit '''pamusb-conf''' kann nun der USB-Stick der'''/etc/pamusb.conf''' hinzugefügt werden. Dazu ist folgender Befehl notwendig: {{{#!Befehl sudo pamusb-conf --add-device MeinStick Please select the device you wish to add. * Using "Philips USB Flash Drive (1234567890123456)" (only option) Which volume would you like to use for storing data ? * Using "/dev/sdb1 (UUID: E8ED-3F91)" (only option) Name : MeinStick Vendor : Philips Model : USB Flash Drive Serial : 1234567890123456 UUID : E8ED-3F91 Save to /etc/pamusb.conf ? [Y/n] Y Done. }}} Die Frage, ob die Daten der '''/etc/pamusb.conf''' hinzugefügt werden sollen, bestätigt man mit [[Tasten(y)]]. Um weitere USB-Sticks der Konfiguration hinzuzufügen ist der Befehl zu wiederholen. == Benutzer hinzufügen == Mit '''pamusb-conf''' kann nun der '''/etc/pamusb.conf''' ein Benutzer hinzugefügt werden. {{{#!Befehl sudo pamusb-conf --add-user benutzer Which device would you like to use for authentication ? * Using "MeinStick" (only option) User : benutzer Device : MeinStick Save to /etc/pamusb.conf ? [Y/n] Y Done. }}} Die Frage, ob der Benutzer der '''/etc/pamusb.conf''' hinzugefügt werden soll, bestätigt man mit [[Tasten(y)]]. Um weitere USB-Sticks der Konfiguration hinzuzufügen ist der Befehl zu wiederholen. Um zu Prüfen ob alles richtig Angelegt wurde nutzen man den Befehl '''pamusb-check''', der die Authentifizierung simmuliert. {{{#!Befehl pamusb-check benutzer * Authentication request for user "benutzer" (pamusb-check) * Device "MeinStick" is connected (good). * Performing one time pad verification... * Verification match, updating one time pads... * Access granted. }}} == Konfiguration der Authentifizierung == Um nun die Authentifizierung zu aktivieren muss die Datei '''common-auth''' im Verzeichnis '''/etc/pam.d/''' angepasst werden. Dazu öffnet man die Datei mit Root-Rechten in einem Editor [[#3 3]] und ändert den Inhalt der Datei Von: {{{#!Text auth required pam_unix.so nullok_secure }}} In: {{{#!Text auth required pam_usb.so auth required pam_unix.so nullok_secure }}} Ab jetzt ist eine Anmeldung am System nur noch mit dem Benutzer-Kennwort und dem USB-Stick möglich. Dies kann man Testen in einem Terminal. {{{#!Befehl sudo -i Password: root@bernie:~# }}} Nach der Eingabe des Passwortes ist man nun '''root'''. Die Datei '''/var/log/auth.log''' zeigt die korrekte Authentifizierung mit dem Kennwort und dem USB-Stick an. {{{#!Befehl tail -n 5 /var/log/auth.log Jul 15 20:45:44 bernie pam_usb[6732]: pam_usb v0.4.1 Jul 15 20:45:44 bernie pam_usb[6732]: Authentication request for user "benutzer" (sudo) Jul 15 20:45:44 bernie pam_usb[6732]: Device "MeinStick" is connected (good). Jul 15 20:45:44 bernie pam_usb[6732]: Access granted. Jul 15 20:45:48 bernie sudo: benutzer : TTY=pts/0 ; PWD=/ ; USER=root ; COMMAND=/bin/bash }}} == pamusb-agent == Der '''pamusb-agent''' ermöglicht das automatische Ausführen von Befehlen. Damit ist es z.B. möglich den Bildschirm durch das entfernen des USB-Stick zu sperren. Beispiel für das automatische Sperren des Bildschirms beim entfernen des USB-Sticks: Hierfür wird die '''/etc/pamusb.conf''' in der Sektion '''users''' angepasst. Diese ist mir Root-Rechten in einem Editor zu öffnen. {{{#!Text MeinStick gnome-screensaver-command --lock gnome-screensaver-command --deactivate }}} Um nun den '''pamusb-agent''' auch unter Gnome nutzen zu können, muss dieser dem [:Autostart:] hinzugefügt werden. Weiter Einstellungen der '''/etc/pamusb.conf''' sind hier zu finden: http://pamusb.org/doc/configuration {en} {{{#!Hinweis Anmeldung ohne USB-Stick }}} Um sich wieder '''ohne''' USB-Stick am System anmelden zu können, entfernt man die Zeile {{{#!Text auth required pam_usb.so }}} aus der '''/etc/pam.d/common-auth'''. = Links = http://www.pamusb.org/doc/quickstart {en} Quickstart zur Einrichtung von pamusb http://www.pamusb.org/doc/configuration {en} Weitere Einstellungen für die pamusb.conf ---- * [:Kategorie/Sicherheit:] * [:Kategorie/System:]