ล็อคและปลดล็อกจากดิสก์ USB (pendrive)


15

มีโปรแกรมสำหรับล็อคและปลดล็อกเครื่อง Ubuntu ของฉันโดยใช้แฟลชไดรฟ์หรือไม่?

ตัวอย่างเช่นเมื่อฉันถอดแฟลชไดรฟ์ usb ออกคอมพิวเตอร์จะล็อคอัตโนมัติและเมื่อฉันใส่แฟลชไดรฟ์คอมพิวเตอร์จะปลดล็อคโดยอัตโนมัติ

ขอบคุณล่วงหน้า.


2
โปรดจำไว้ว่าการโคลนนิ่ง usb stick นั้นเป็นเรื่องเล็กน้อยแม้ว่าคุณจะตรวจสอบหมายเลขซีเรียลก็ตาม
Olli

คำตอบ:


10

ฉันรู้ว่ามันเป็นคำตอบที่ล่าช้ามากแค่คิดว่ามันอาจช่วยผู้อ่านในอนาคตได้ ฉันโพสต์คำตอบที่ล็อคด้วยไดรฟ์ USB

โมดูลที่เรียกว่า PAM (โมดูลการตรวจสอบได้แบบเสียบได้) สามารถปรับแต่งได้ตามความต้องการของคุณ บทความที่สวยงามมีอยู่ในlinuxconfigอธิบายรายละเอียดนี้

ขั้นตอนคือ:

  1. ติดตั้ง PAM

    $ sudo apt-get install pamusb-tools libpam-usb
    
  2. เพิ่มอุปกรณ์ USB ในการกำหนดค่า PAM

    $ sudo pamusb-conf --add-device <my-usb-stick>
    
  3. เลือกระดับเสียงของคุณและ " Y " เพื่อบันทึก

  4. กำหนดผู้ใช้สำหรับ PAM auth

    $ sudo pamusb-conf --add-user <ubuntu-user>
    
  5. เลือกและ " Y " เพื่อบันทึก

  6. กำหนดค่า PAM

    $ sudo gedit /etc/pam.d/common-auth
    
  7. เพิ่มบรรทัดด้านล่างและบันทึก

    auth    sufficient      pam_usb.so
    
  8. ทดสอบ PAM auth

    $ su ubuntu-user
    
  9. ล็อคเมื่อตัดการเชื่อมต่อ

    $ sudo gedit /etc/pamusb.conf
    
  10. แก้ไขบล็อค "ผู้ใช้" ให้มีลักษณะดังนี้:

    <user id="ubuntu-user"> 
          <device> 
                  my-usb-stick 
          </device> 
          <agent event="lock">gnome-screensaver-command -l</agent> 
          <agent event="unlock">gnome-screensaver-command -d</agent> 
     </user>*
    

6

ใน

/etc/udev/rules.d/

คุณสามารถเขียนสคริปต์

SUBSYSTEM=="usb", SYSFS{idProduct}=="PPPP", SYSFS{idVendor}=="VVVV", RUN+="/usr/sbin/usb-locking"

โดยที่ PPPP และ VVVV เป็นค่าที่คุณสามารถแยกlsusbได้

ผลิตภัณฑ์ตัวตนทุกตัวจะจับคู่กัน แต่การล็อก usb สามารถติดอุปกรณ์และดูที่ตัวไดรฟ์เพื่อความถูกต้องเพิ่มเติม - ไฟล์บางไฟล์มีรหัสไบต์บางส่วนในวันที่ ...

มันเสี่ยงถ้าคนอื่นเข้าถึงไม้เท้าได้แน่นอน

สคริปต์สามารถดูต่อไปทุกนาทีไม่ว่าจะยังคงติดอยู่และล็อคถ้าไม่


2
กฎของคุณควรมี ACTION == เพิ่ม ทำไมคุณจะมองทุก ๆ นาทีว่าไม้อยู่ตรงนั้นหรือไม่ เพียงแค่ทริกเกอร์ที่ ACTION == ลบแล้วล็อคหน้าจอทุกครั้งที่แท่งหายไป คุณควรเพิ่มหมายเลขประจำเครื่องและ UUID ของพาร์ติชันให้กับกฎ
Matthias Urlichs

3

ขอบคุณสำหรับคำแนะนำของคุณ .. ฉันเขียนสคริปต์ง่าย ๆ โดยใช้คำสั่ง lsusb และใส่ในระบบ -> preferences-> แอปพลิเคชันเริ่มต้น สคริปต์มีดังนี้ ..

#! / bin / ดวลจุดโทษ
# สคริปต์เพื่อล็อคและปลดล็อกคอมพิวเตอร์โดยอัตโนมัติเมื่อ pendrive usb ของฉันถูกลบ

LSUSB = `ซึ่ง lsusb`

ถ้า [-z $ LSUSB]; แล้วก็
    echo "ไม่พบคำสั่ง lsusb กำลังออกจาก .. \ n"
    ออกจาก 56
Fi


ในขณะที่:
ทำ
    นอนหลับ 3
    echo "กำลังทำงานในลูป"
    # ตรวจสอบไดรฟ์ USB

    USB = `lsusb | โลจิเทค grep

    ถ้า [-n "$ {USB}"]; แล้วก็
        echo "อุปกรณ์ USB: พบชัยชนะ"
        # find and kill สกรีนเซฟเวอร์ใด ๆ ที่พบ
        gnome-screensaver-command --deactivate
        ต่อ
    Fi

    # ไม่พบอุปกรณ์ USB
    # ตรวจสอบว่าสกรีนเซฟเวอร์กำลังทำงานอยู่หรือไม่
    # ถ้าไม่ได้ทำงานให้เริ่มสกรีนเซฟเวอร์
    คำสั่ง gnome-screensaver-command - เปิดใช้งาน


เสร็จแล้ว

ออก 0
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.