間違ったパスワードを入力した後にラップトップのウェブカメラで写真を撮る


10

画面がロックされているときに間違ったパスワードが入力された場合にラップトップのWebカメラを使用して写真が撮られるように、ラップトップをセットアップしたいと思います。xlockxlockmoreパッケージから)を調べましたが、間違ったパスワードが入力されたときにカスタマイズされたアクションを実行するオプションがありません。

SuperUserにも同様の質問がありますが、Windowsのみを対象としています間違ったパスワードを入力して写真を撮る

(面白い猫の写真が好きな人のために:私のラップトップは、3回の不正なパスワード試行の後に写真を撮るように設定されています。)



7
mazs

@mazsありがとう、それは多かれ少なかれ私が探していたものです。
PetrPudlák2016年

今、私はこれらすべてのハッカー男が暗い部屋のパーカーで働いている理由を理解しています。
Utku

回答:


4

コメントでmazsが指摘した、Ask Ubuntuのgertvdijkによるこの投稿をコピーしました。この質問を締めくくる努力において。


BkkBonanzaによるUbuntuforumsに関するこの投稿に基づいています。

これはPAMを使用するアプローチであり、失敗したすべてのログイン試行で機能します。SSH、仮想端末、または通常のログイン画面を使用すると、すべてが最終的にPAMによって処理されるため、問題になりません。

  1. ffmpegをインストールします。これをWebカメラの画像を取得するコマンドラインの方法として使用します。更新:Ubuntu 14.04にアップグレードすると、ffmpegは削除されます。以下のスクリプトでは、ffmpegの代わりにavconvを使用できます。個別にインストールする必要はありません。

  2. どこかに小さなスクリプトを作成します。たとえば/usr/local/bin/grabpicture、次のコンテンツを使用します

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

    / dev / video0をWebカメラの実際のビデオデバイスに変更し、画像が保存されているパスを選択します-選択するだけ/tmpです。Ubuntuの新しいバージョンでavconvは、ffmpegsudo apt-get install libav-tools)の代わりに使用します。

  3. 実行可能にしchmod +x /usr/local/bin/grabpictureます。

  4. 呼び出すだけでテストできます/usr/local/bin/grabpicture。に表示されるファイルを確認します/tmp/vid....jpg

  5. 試行が失敗するたびにこれを呼び出すようにPAMを構成します。

    注:これは慎重に行ってください。失敗すると、通常の方法でシステムに再びアクセスできなくなります。

    1. rootアクセスでターミナルウィンドウを開き(sudo -i)、開いたままにします-次のステップで失敗する場合に備えて。
    2. を実行するなど/etc/pam.d/common-authして、お気に入りのエディターで開きますgksudo gedit /etc/pam.d/common-auth。このファイルの行の順序が重要である次の手順に注意してください。

    3. 以下の行を見つけます。デフォルトでは、のある行の前に1行ありますpam_deny.so。私の12.04システムでは、次のようになります。

      auth    [success=1 default=ignore]      pam_unix.so nullok_secure
      
    4. この行で、成功時にスクリプトをスキップするには、success = 1をsuccess = 2に変更します。これは重要なステップです。

    5. そのすぐ下に、実際のスクリプトを呼び出す新しいスクリプトを追加します。

      auth    [default=ignore]                pam_exec.so seteuid /usr/local/bin/grabpicture
      
    6. ファイルを保存して閉じます。何も再起動する必要はありません。

  6. 試して。

    1. 新しいターミナルウィンドウで、通常のユーザーsu -l usernameとして、ユーザー名を使用して別のユーザーとしてログインしてみますusername(もちろん実際のユーザーで変更してください)。意図的に間違ったパスワードを入力してください。これが新しい画像になるかどうかを確認します。
    2. 上記と同じですが、正しいパスワードを入力してください。ログインして、写真が撮れないことを確認してください。
  7. テストが成功した場合、DE(Unity / KDE / ...)からログアウトできます。ログイン画面から間違ったパスワードを入力すると、同じものが表示されるはずです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.