- Системное администрирование и мониторинг Linux/Windows серверов и видео CDN
- Статьи по настройке и администрированию Windows/Linux систем
- Включение/выключение питания USB устройств из консоли
- Linux Disable USB Devices (Disable loading of USB Storage Driver)
- usb-storage driver
- How to forbid to use USB-storage devices on using fake install method
- Blacklist usb-storage
- BIOS option
- Encrypt hard disk
- Grub option
- Как отключить порты USB, кроме клавиатуры и мыши?
- disable a usb port in linux
- Is it possible to turn off a specific USB port so it doesn’t accept any device?
- 2 Answers 2
- Undo this:
Системное администрирование и мониторинг Linux/Windows серверов и видео CDN
Статьи по настройке и администрированию Windows/Linux систем
- Полезное
- Карта сайта
- Мой сайт-визитка
- Рубрики
- Linux
- VoIP
- Безопасность
- Видеопотоки
- Системы виртуализации
- Системы мониторинга
- Windows
- Интересное
- Сеть и Интернет
- Linux
- Мета
- Войти
- RSS Feed
Включение/выключение питания USB устройств из консоли
Иногда бывают ситуации, когда нужно отключить USB флешку, сделать настройку какой-то программы и потом опять подключить для нормальной работы. Но что делать если эти действия нужно сделать на удаленном сервере, к которому у нас нет физического доступа. Можно обратиться в службу поддержки, но можно и сделать все своими силами «не отходя от кассы». Расскажу как это делается.
Допустим, наша флешка уже втыкнута в USB-порт. Первым делом нужно проверить так ли это.
Как видим, USB-флешка находиться на шине Bus 001. Следовательно нам нужно найти в /sys/bus/usb/devices/ соответствующее USB устройство и выключить питание.
Чтобы копаться в системных устройствах нужны права суперпользователя.
По скольку мы знаем, что наша USB флешка на физической шине с номером 1. Следовательно, нужно отключить питание устройства 1-6, так как именно оно отвечает за первую шину.
Приведенная выше команда, отключит питание устройства на лету. Проверим теперь, так ли это.
Как видим — устройство отключено.
После внесения нужных изменений, подключаем питание USB устройства.
Источник
Linux Disable USB Devices (Disable loading of USB Storage Driver)
usb-storage driver
The usb-storage.ko is the USB Mass Storage driver for Linux operating system. You can see the file typing the following command:
# ls -l /lib/modules/$(uname -r)/kernel/drivers/usb/storage/usb-storage.ko
All you have to do is disable or remove the usb-storage.ko driver to restrict to use USB devices on Linux such as:
- USB keyboards
- USB mice
- USB pen drive
- USB hard disk
- Other USB block storage
How to forbid to use USB-storage devices on using fake install method
Type the following command under CentOS or RHEL 5.x or older:
# echo ‘install usb-storage : ‘ >> /etc/modprobe.conf
Please note that you can use : a shell builtin or /bin/true .
Type the following command under CentOS or RHEL 6.x/7.x or newer (including the latest version of Fedora):
# echo ‘install usb-storage /bin/true’ >> disable-usb-storage.conf
Save and close the file. Now the driver will not load. You can also remove USB Storage driver without rebooting the system, enter:
# modprobe -r usb-storage
# mv -v /lib/modules/$(uname -r)/kernel/drivers/usb/storage/usb-storage.ko /root/
##################
#### verify it ###
##################
# modinfo usb-storage
# lsmod | grep -i usb-storage
# lsscsi -H
Sample outputs:
Fig.01: How to disable USB mass storage devices on physical Linux system?
Blacklist usb-storage
Edit /etc/modprobe.d/blacklist.conf, enter:
# vi /etc/modprobe.d/blacklist.conf
Edit or append as follows:
Save and close the file.
BIOS option
You can also disable USB from system BIOS configuration option. Make sure BIOS is password protected. This is recommended option so that nobody can boot it from USB.
Encrypt hard disk
Linux supports the various cryptographic techniques to protect a hard disk, directory, and partition. See «Linux Hard Disk Encryption With LUKS [ cryptsetup Command ]» for more info.
Grub option
You can get rid of all USB devices by disabling kernel support for USB via GRUB. Open grub.conf or menu.lst and append «nousb» to the kernel line as follows (taken from RHEL 5.x):
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare✨
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
- How to protect Linux against rogue USB devices using USBGuard
Join Patreon ➔
Make sure you remove any other reference to usb-storage in the grub or grub2 config files. Save and close the file. Once done just reboot the system:
# reboot
For grub2 use /etc/default/grub config file under Fedora / Debian / Ubuntu / RHEL / CentOS Linux. I strongly suggest that you read RHEL/CentOS grub2 config and Ubuntu/Debian grub2 config help pages.
🐧 Get the latest tutorials on Linux, Open Source & DevOps via
Источник
Как отключить порты USB, кроме клавиатуры и мыши?
Добрый день! Подскажите пожалуйста, как на компьютере с Linux отключить все USB порты, так, чтобы в них не было возможности вставлять съемные накопители и флешки, но можно было бы подключать клавиатуру и мышь?
Удалить все udev правила usb кроме мыши и клавиатуры. Но последний раз я копался в udev несколько лет назад и поэтому уже могло там многое поменяться.
в ядре отключить USB Storage, не?
в ядре отключить USB Storage, не?
А если например отключить монтирование дисков, кроме сетевых и локальных, указанных с fstab? Нужно сделать так, чтобы пользователи на предприятии не могли подключать флешки и прочие накопители к компу, но клавиатура и мышь и возможно штрих-сканер работали бы.
blacklist usb_storage >/etc/modprobe.conf.d/666.conf
перекомпиливаешь ядро, Device Drivers -> USB -> USB Storage, USB Storage убрать галочку. либо тут написано http://www.cyberciti.biz/faq/linux-disable-modprobe-loading-of-usb-storage-dr.
или blacklist usb-storage или как там этот модуль зовётся
в иксах отключить определение клав и мышей по идентификатору с identifier keyboard и option ignore on, создав конфиг в /etc/X11/xorg.conf.d/
чорд, я всё перепутал, сорри
У меня есть: /etc/modprobe.d/fbdev-blacklist.conf
Просто добавить в него «blacklist usb-storage»?
можно создать новый файл /etc/modprobe.d/usb-blacklist.conf
в файл прописать blacklist usb_storage сохранить и ребут
В современных DE автомонтированием подключаемых накопителей заведует udisks и consolekit / polkit. Поэтому вам нужно отредактировать политики consolekit / polkit, разрешающие монтирование подключаемых съёмных накопителей. В таком случае автомонтирование средствами udisks происходить не будет, а в случае, если пользователь нажмёт на иконку накопителя в файловом менеджере будет выведен запрос пароля root.
Если же вы используете для автомонтирования правила udev, например набор правил uam, то удалите их.
Можете рассказать поподробнее, как это делается, похоже это именно то, что мне нужно.
В /etc/polkit-1/rules.d/10-disable-mount.rules помещаете:
Это что, жаваскрипт?
Это синтаксис правил polkit.
Сишный это синтаксис.
В данном случае это синтаксис правил polkit, если вы напишете правило без соответствия синтаксису, то оно не будет распознано, без разницы на что синтаксис похож.
Нужно сделать так, чтобы пользователи на предприятии не могли подключать флешки и прочие накопители к компу, но клавиатура и мышь и возможно штрих-сканер работали бы.
Ну это проще. Всего то надо отредактировать /etc/group . Дело в том что обращаться к соответствующему демону для монтирования можно только если состоишь в определённой группе. Вроде как fuse, cdrom, floppy.
А нужные скрипты монтирования (сетевая шара или какой то специальный носитель) можно монтировать делегировав соответствующий скрипт через sudo
Отключение usb-storage, в общем случае не поможет.
Сканер-штрихкодов наверняка USB-COM и пользователь должен иметь доступ к этому порту, через COM-порт скачаю что угодно.
USB-HID (через который работают большинство клав и мышей) тоже довольно навороченный протокол.
Прочитать флешку можно и с помощью libusb (наверняка есть в системе).
В конце концов есть кнопка reset и загрузка с USB (во многих BIOS-ах выбор альтернативной загрузки не отключается).
Ещё /etc/group можно посмотреть на наличие юзера/группы в storage.
Что за дистр-то? А то тут долго голову можно ломать.
Debian 6. Но я уже сделал через /etc/modprobe.d/usb-blacklist.conf, как указал anonymous, и все вроде работает, во всяком случае я попробовал после этого подключить USB флешку и диск, и они не вызвали никакой видимой реакции системы, диски не подмонтировались.
Можно залить разъёмы эпоксидкой или повредить их. Можно в биосе отключить USB, а мышь и клаву использовать через ps/2. В случае hardened ядра в grsec есть возможность при сборке ведра включить опцию типа «не детектировать новые USB-устройства после старта ядра», т.е. с чем забутились, с тем и дальше работаем.
А если при апдейте ядра название модуля поменяется(usb_storage -> usb_mass_storage, например)? А если админ захочет флешку подключить(он, конечно, модуль ручками подгрузит, но голову поломает)? И вообще, слить инфу через USB можно и в обход USB Mass Storage(например, MTP).
Думаю, нужно рубить проблему на корню — не давать пользователю монтировать ФС и работать напрямую с блочными устройствами(dd if=
Но только появилась проблема — если USB-флешка была подключена до перезапуска, то она будет видна в системе и успешно примонтируется.
добавь в параметр ядра ‘nousb’. Хотя неуверен, что мышка с клавой будут работать.
Источник
disable a usb port in linux
I’ve searched a lot for an answer to this, but the closest I can get to finding a solution is this, but it doesn’t work for me.
Here’s my system:
The problem is this: one of my USB ports appears to be dead. Any program that tries to read «/sys/bus/usb/devices/usb1/descriptors» will cause the program to hang in an unkillable state.
Unfortunately, a lot of software seems to want to access USB1, including chrome and blender, which is why this is bugging me so much. When I invoke those programs with strace, they always hang at the moment they try to open «/sys/bus/usb/devices/usb1/descriptors».
I’ve tried things like «echo suspend > /sys/bus/usb/devices/usb1/power/level» but it’s no good — the command simply hangs like the others.
I tried using the hubpower code mentioned in the post linked above, but it likewise seems to just hang like the others.
I tried powering down the whole system and opening up the computer itself to disconnect the USB port directly, but the whole collection of USB ports (there are a lot of them) seem very tightly integrated with the motherboard, and I couldn’t see a way to unplug anything. Granted, I don’t have tons of experience plugging wires into and out of motherboards. If the only hope is to do it that way, I could hopefully manage it.
I tried going into the BIOS and disabling all the USB ports except one; and then disabling all except the next; and the next; and so on, to see which one was the problem. But it didn’t seem to have any effect — Linux still was able to recognize the ports well enough to use my USB mouse and keyboard. Linux didn’t seem to care what the BIOS configuration was.
The thing that occurs to me is that there may be some way to tell the Linux kernel to ignore USB1, but to do so without actually attempting to interact with USB1 (since that seems to cause the unkillable hang). But I don’t know how to do that.
Источник
Is it possible to turn off a specific USB port so it doesn’t accept any device?
I have a lot of ports on my computer. I would like to turn off one of them, so when I connect my phone to that port, it only charges. I do want my phone to work with my computer in some occasions though, so I hope other ports are not affected.
I would just like to know how possible this is.
2 Answers 2
First, run lsusb .
The output should be like:
In the output, find the device number of the port to be disabled. For example, the Seagate drive in the example has Device 009 — that is its device number. Then the id will be usb[device number] — such as usb9
Then, disable USB wake-up (do this only once):
Be sure to replace X in usbX with the device number.
Then turn it off:
Undo this:
Here is a plug & play (literally) option:
It’s a good idea if you want to avoid pop-up messages and file browsers every time you plug your phone in for charging only.
This is also more fool-proof than the software approach because software that turns off the port for data can be reversed by software that turns it back on. Or it might be reinitialized during suspend/resume or some other process you didn’t foresee.
Источник