2008年6月24日 星期二

如何限制usb隨身碟在Linux & Windows 中使用 (How to disable usb disk on linux or Windows )

<---圖片轉自Emma's華滋華斯庭園

目前很多人的電腦都不喜歡被別人的usb隨身碟捅屁屁 (大部份的人還都是捅前面...的USB孔咧)

不管是公司或是住宿舍,最討厭的就是有人常常一句
ㄟ、你電腦借用一下

然後不管37~21就把隨身碟往你電腦一插........
現在隨身碟病毒又猖獗,你自己有良好的掃毒習慣不代表別人有


現在又有太多人會把隨身碟做成autorun,甚至市面上還有書籍教你怎麼收集別人電腦裡面的.jpg檔或doc檔,xls檔,表面上他只是把隨身碟插進你電腦裡面,把一段精彩影片放到你的電腦裡面

事實上卻已經把病毒或者正在收集你的冠C圖......或者你的常用密碼表....

嘿嘿
有人的電腦要借我插一下隨身碟的嗎?我把搞笑影片COPY給你喔.....(笑)

廢話說完了
以下就介紹如何在Linux 或者 Windows當中把USB隨身碟禁用吧

當然,Windows 上已經有很多程式可以用
但是個人並不喜歡靠第三方軟體來達成,畢竟殺機焉用牛刀
一行指令就能完成的事,為什麼要用程式呢?
(USE CLI ,NOT GUI)

(註:以下方法都只會禁用到usb隨身碟,並不會影響其他usb裝置如usb滑鼠、鍵盤)

Windows XP禁用usb隨身碟 :

在 C:\Windows\inf ( 或者C:\%windir%\inf )中,有兩個檔案,一個是usbstor.inf、usbstor.PNF
這兩個就是用來控管 usb 隨身碟的,當然,裡面有很多預設的dirver,要讓特定的牌子usb才可以用,就可以只留該牌的usb隨身碟,

又或者

直接做以下兩個檔案,
一個叫 disable_usb.reg
內容用記事本打開,如下

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR]
"Start"=dword:00000004

一個叫 enable_usb.reg
內容一樣也用記事本新建一個檔案,如下

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR]
"Start"=dword:00000003

只要把點兩下disable_usb.reg 把這個加入註冊表中,就可以直接讓usb隨身碟不能使用了
當然,要用的時候,再點選enable_usb.reg即可

又或者,怕usb自己手賤去把reg註冊表改回來

也可以執行下面兩行指令去把 usbstor.inf、usbstor.PNF的權限拿掉,就能禁用usb隨身碟
xcacls.exe usbstor.inf /d everyone /y
xcacls.exe usbstor.pnf /d everyone /y

那如果是要啟用usb隨身碟,就執行
xcacls.exe usbstor.inf /g everyone:r /y
xcacls.exe usbstor.pnf /g everyone:r /y

因為小弟非常看不慣M$對Vista的態度,所以不用vista,也因此不確定vista是否試用,就請各為看倌自己試試囉


Linux部份 就簡單啦


/lib/modules/`uname -r`/kernel/drivers/usb/storage

裡面就有一個叫usb-storage.ko的

此usb-storage.ko就是在控管usb隨身碟的driver,可以進行更名或者鎖權限
比windows方便多了,

此方法不管是把檔案移除或權限改掉,要回覆可使用usb隨身碟時,都不需要重開機,灰常方便呀(講話竟然會 牛頭牌化.......)

1 則留言:

Compiler 提到...

Dear 仁兄,
我在RHEL4.6版試了您的方法, 可是系統重開機後, 還是會load usb_storage, 請問您有碰過這種問題嗎?