Fotografieren mit einer Laptop-Webcam nach Eingabe eines falschen Passworts

10

Ich möchte meinen Laptop so einrichten, dass ein Bild mit der Webcam des Laptops aufgenommen wird, wenn beim Sperren des Bildschirms ein falsches Kennwort eingegeben wird. Ich habe geprüft xlock(aus dem xlockmore- Paket), aber es gibt keine Option, eine benutzerdefinierte Aktion auszuführen, wenn ein falsches Kennwort eingegeben wird.

Bei SuperUser gibt es eine ähnliche Frage, die sich jedoch nur an Windows richtet: Aufnehmen eines Fotos nach Eingabe eines falschen Kennworts .

(Für diejenigen, die lustige Katzenfotos mögen: Mein Laptop ist so eingerichtet, dass er nach 3 falschen Passwortversuchen ein Bild macht .)

Petr Pudlák
quelle
2
Haben Sie diese github.com/jeroennijhof/pam_script
Hristo Mohamed
7
Vielleicht haben Sie auch hier eine Antwort askubuntu.com/questions/253189/…
Mazs
@mazs Danke, das habe ich mehr oder weniger gesucht.
Petr Pudlák
Jetzt verstehe ich, warum all diese Hacker in einem dunklen Raum in Kapuzenpullis arbeiten.
Utku vor

Antworten:

3

Kopierte diesen Beitrag auf Frage Ubuntu von gertvdijk , darauf hingewiesen von Mazs in den Kommentaren. In dem Bemühen, diese Frage zu schließen.


Basierend auf diesem Beitrag auf den Ubuntuforums von BkkBonanza .

Dies ist ein Ansatz, der PAM verwendet und für alle fehlgeschlagenen Anmeldeversuche funktioniert. Bei Verwendung von SSH, einem virtuellen Terminal oder über den regulären Anmeldebildschirm spielt dies keine Rolle, da am Ende alles von PAM erledigt wird.

  1. Installieren Sie ffmpeg . Wir werden dies als Befehlszeilenmethode zum Abrufen der Webcam-Bilder verwenden. Update: ffmpeg wird beim Upgrade auf Ubuntu 14.04 entfernt. Wir können avconv anstelle von ffmpeg im folgenden Skript verwenden. Sie müssen nichts separat installieren.

  2. Erstellen Sie irgendwo ein kleines Skript, z. B. /usr/local/bin/grabpicturemit dem folgenden Inhalt

    #!/bin/bash
    ts=`date +%s`
    ffmpeg -f video4linux2 -i /dev/video0 -vframes 3 /tmp/vid-$ts.%01d.jpg
    exit 0  #important - has to exit with status 0
    

    Ändern Sie / dev / video0 mit dem tatsächlichen Videogerät Ihrer Webcam und wählen Sie einen Pfad, in dem die Bilder gespeichert werden - ich wähle einfach /tmp. In der neueren Version von Ubuntu verwenden Sie avconvanstelle von ffmpeg( sudo apt-get install libav-tools).

  3. Machen Sie es ausführbar, z chmod +x /usr/local/bin/grabpicture.

  4. Testen Sie es, indem Sie es einfach aufrufen : /usr/local/bin/grabpicture. Überprüfen Sie, ob Dateien in angezeigt werden /tmp/vid....jpg.

  5. Konfigurieren Sie PAM so, dass dies bei jedem fehlgeschlagenen Versuch aufgerufen wird.

    Hinweis: Gehen Sie dabei vorsichtig vor. Wenn dies fehlschlägt, können Sie nicht mehr regelmäßig auf Ihr System zugreifen.

    1. Öffnen Sie ein Terminalfenster mit Root-Zugriff (sudo -i) und lassen Sie es offen - nur für den Fall, dass Sie es in den nächsten Schritten vermasseln.
    2. Öffnen Sie /etc/pam.d/common-authin Ihrem Lieblingseditor, z gksudo gedit /etc/pam.d/common-auth. B. indem Sie dies tun . Beachten Sie bei den folgenden Schritten die Reihenfolge der Zeilen in dieser Datei.

    3. Suchen Sie die Zeile unten. Standardmäßig steht eine Zeile vor der mit pam_deny.so. Auf meinem 12.04-System sieht es so aus:

      auth    [success=1 default=ignore]      pam_unix.so nullok_secure
      
    4. Ändern Sie in dieser Zeile den Wert "Erfolg = 1" in "Erfolg = 2", damit unser Skript bei Erfolg übersprungen wird. Dies ist ein wichtiger Schritt.

    5. Fügen Sie dort unten ein neues hinzu, um das eigentliche Skript aufzurufen:

      auth    [default=ignore]                pam_exec.so seteuid /usr/local/bin/grabpicture
      
    6. Speichern und schließen Sie die Datei. Sie müssen nichts neu starten.

  6. Probier es aus.

    1. Versuchen Sie su -l usernamein einem neuen Terminalfenster als normaler Benutzer, sich als anderer Benutzer mit Benutzername anzumelden username(ändern Sie dies natürlich durch einen tatsächlichen). Geben Sie absichtlich das falsche Passwort ein. Überprüfen Sie, ob dies zu einem neuen Bild führt.
    2. Das gleiche wie oben, aber geben Sie jetzt das richtige Passwort ein. Überprüfen Sie, ob Sie sich anmelden und kein Bild aufgenommen wird.
  7. Wenn die Tests erfolgreich waren, können Sie sich von Ihrem DE (Unity / KDE / ...) abmelden. Wenn Sie auf dem Anmeldebildschirm ein falsches Kennwort eingeben, sollte dies auch angezeigt werden.

Centimane
quelle