锁定和解锁USB磁盘(pendrive)


15

是否有用于使用闪存驱动器锁定和解锁Ubuntu机器的程序?

例如,当我取出USB闪存驱动器时,计算机会自动锁定,而当我插入闪存驱动器时,计算机会自动解锁。

先感谢您。


2
请记住,即使您检查序列号,克隆USB记忆棒也是微不足道的任务。
Olli

Answers:


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身份验证定义用户

    $ 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身份验证

    $ 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 == add。另外,为什么您每分钟都要看棒子是否在那儿?只需在ACTION ==上触发即可,只要操纵杆消失,就可以移除并锁定屏幕。您还应该将操纵杆的序列号和分区的UUID添加到规则中。
马提亚斯·乌利希斯

3

感谢您的建议。.我使用lsusb命令编写了一个简单的脚本,并放入系统->首选项->启动应用程序。脚本如下。

#!/ bin / sh
#删除USB随身碟时自动锁定和解锁计算机的脚本

LSUSB =`哪个lsusb`

如果[-z $ LSUSB]; 然后
    回声“找不到lsusb命令。正在退出。\ n”
    56号出口
科幻


时:
做
    睡3
    回声“循环运行”
    #检查USB驱动器

    USB =`lsusb | grep Logitech`

    如果[-n“ $ {USB}”]; 然后
        回显“ USB设备:已找到超越”
        #查找并杀死所有找到的屏幕保护程序。
        gnome-screensaver-command-停用
        继续
    科幻

    #找不到USB设备
    #检查屏幕保护程序是否正在运行
    #如果未运行,则启动屏幕保护程序
    gnome-screensaver-command-激活


做完了

出口0
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.