Как настроить usb redirector

Установка и настройка usb-redirector-linux в CentOS

В статье пойдет речь о настройке сервера для сетевой передачи устройства USB на другой компьютер. Подобная конструкция, как правило, необходима для проброса различных USB-ключей на виртуальные машины. Серверная часть будет настраиваться на базе Linux CentOS 7, клиентская — Windows. В качестве серверного ПО будем использовать usb-redirector-linux. Внимание — данный продукт нельзя использовать бесплатно, если раздача USB устройства идет с сервера Linux. В большей степени, инструкция предназначена для тех, кто планирует купить данных продукт.

Подготовка сервера

Для корректной установки программы, необходимо обновить систему:

После сервер необходимо перезагрузить:

Настройка сервера

usb-redirector-linux собирается из исходников. Для начала ставим пакеты, необходимые для сборки:

yum install wget gcc kernel-devel

Переходим на страницу загрузки программы и копируем ссылку на ее скачивание:

Используя ссылку, скачиваем исходник на сервер:

Распаковываем скачанный архив и переходим в каталог исходников модулей:

tar -zxvf usb-redirector-linux-x86_64.tar.gz

Собираем исходник с указанием исходника ядра:

* каталог 3.10.0-862.3.3.el7.x86_64, скорее всего, будет другим — это зависит от версии ядра.

Возвращаемся в корень каталога, который появился после распаковывания архива:

Устанавливаем usb-redirector следующей командой:

Проброс USB устройства

Переходим в каталог, куда была установлена программа:

Отображаем список подключенных USB устройств:

Получим что-то на подобие:

================= USB SERVER OPERATION SUCCESSFUL ===============
List of local USB devices:

1: USB Keyboard SIGMACHIP Composite USB Device
Vid: 1c4f Pid: 0026 Port: 2-1.4
Status: plugged

2: ET99 Token OEM USB Human Interface Device
Vid: 096e Pid: 0303 Port: 2-1.3
Status: plugged

Чтобы расшарить токен ET99, вводим:

Настройка клиента

Заходим на страницу загрузки USB Redirector и скачиваем клиентскую часть — в нашем случае для Windows:

Скачанный архив распаковываем и запускаем установщик. Отвечаем на все вопросы мастера нажатием Далее.

После окончания установки запускаем программу — нажимаем Add USB Server и прописываем IP-адрес нашего сервера:

Появится список расшаренных устройств — просто нажимаем правой кнопкой мыши на необходимый и кликаем Connect USB Device.

Источник

Установка USB Redirector

USB Redirector – Программа для транслирования любого USB-устройства в сеть, т.е позволяет получить доступ к USB-устройству через интернет или локальную сеть так, как если бы оно было подключено к вашему компьютеру. Программа распространяется по принципу «Попробуй и Купи», это значит, что программой можно пользоваться бесплатно в течение определенного периода (15 дней) и потом необходимо либо купить её, либо удалить со своего компьютера. С ценами можно ознакомиться по адресу http://www.incentivespro.com/buy.html в таблице под названием «Licensing scheme of USB Redirector RDP Edition», где столбцы – это количество серверов, а строки – максимальное количество одновременно подключенных USB устройств.
Применительно к системе Агбис, данная программа используется для транслирования USB Web-камер и, соответственно, организации возможности фотографирования вещи при терминальной работе сервера (когда камера подключена к локальному компьютеру, а работа фактически производится на сервере).

Читайте также:  Не работает датчик сухого хода насоса

Для транслирования USB устройства нужно проделать определенные (описанные ниже) действия на сервере (там, где подключено USB-устройство) и на клиенте (на котором мы хотим получить доступ к USB устройству).

Со стороны сервера.

Скачиваем дистрибутив программы USB-Redirector for RDP с официального сайта www.usb-server.com или по прямой ссылке http://incentivespro.com/usb-redirector-rdp.zip
Распаковываем полученный архив, заходим в папку «32-bit-setup» и запускаем файл usbrdr_terminalserver_setup.exe

Ждем, когда в появившемся окне станет активна кнопка «Next» и нажимаем ее (обычно это происходит секунд через 10-15 после запуска).

Устанавливаем «I accept the agreement», как показано на рисунке, и нажимаем «Next».

Указываем путь для установки или просто нажимаем кнопку «Next» ничего не меняя.

Нажимаем «Finish», это приведет к первому запуску программы.

При запуске отображается окно, в котором нужно либо нажать кнопку «Enter License Key» и ввести приобретенный ключ для программы, либо нажать кнопку «Continue evaluation» и продолжить знакомство с программой в тестовом режиме. Если у вас еще нет ключа, то нажимаем «Continue evaluation».

Важно! Это сообщение говорит о том, что нужно иметь на сервере драйвер для устройства, к которому мы хотим получить доступ (т.е. драйвер для Веб-камеры). Ставим галочку как на рисунке и нажимаем ОК.

Появляется окно программы. На этом настройка сервера окончена.

Настройка со стороны клиента (т.е. на компьютере удаленного приемного пункта).

Скачиваем дистрибутив программы USB-Redirector for RDP с официального сайта www.usb-server.com или по прямой ссылке http://incentivespro.com/usb-redirector-rdp.zip
Распаковываем полученный архив, заходим в папку «32-bit-setup» и запускаем файл usbrdr_workstation_setup.exe

Ждем, когда в появившемся окне станет активна кнопка «Next» и нажимаем ее (обычно это происходит секунд через 10-15 после запуска).

Устанавливаем «I accept the agreement», как показано на рисунке, и нажимаем «Next».

Выбираем путь для установки или просто нажимаем кнопку «Next» ничего не меняя.

После окончания процесса установки нажимаем «Finish», это приведет к первому запуску программы.

Главное окно программы выглядит следующим образом. В нем отображены все USB-устройства, которые подключены к данному компьютеру. Например, в данном случае подключено два устройства.

Чтобы дать доступ к нашему устройству (Веб-камере), необходимо выделить его в списке и нажать кнопку «Share USB device» (она выделена красным кружком на рисунке).

Если всё сделано правильно, то на иконке устройства появится изображение руки. Это значит, что доступ к нашему устройству открыт.

Теперь можно подключаться к серверу, который мы настраивали в начале статьи. Для этого используем «Подключение к удаленному рабочему столу». В строке Компьютер вводим IP адрес сервера и нажимаем кнопку подключить.

После подключения удаленного компьютера к серверу, если всё сделано правильно, то в окне USB Redirector на сервере появится название сеанса и отобразится подключенное устройство с зеленой галочкой.

Источник

Проброс USB в виртуалку по сети средствами UsbRedir и QEMU

На сегодняшний день существет довольно много способов пробросить USB-устройство на другой компьютер или виртуалку по сети.
Из наиболее популярных — железячные такие как AnywhereUSB и чисто програмные продукты, из тех что я попробовал сам: USB Redirector и USB/IP.
Я бы хотел рассказать вам еще об одном интересном способе, который работает непосредственно с эмулятором QEMU.
Он так же является частью проекта spice, официально поддерживаемым RedHat.

Читайте также:  Trigger click jquery не работает

UsbRedir, это открытый протокол для проброса usb-устройств по tcp на удаленный виртуальный сервер, разработанный при поддержке RedHat в рамках проекта spice. Но как оказалось им можно вполне успешно пользоваться и без spice. В роли сервера выступает usbredirserver, который шарит usb-устройство на определенный порт, а в качестве клиента сам QEMU, который эмулирует подключение экспортированного usb-устройства в определенный usb-контроллер вашей виртуальной машины. Благодаря такому подходу в качестве гостевой системы может использоваться абсолютно любая ОС, так как она даже не знает, что устройство является проброшенным удаленно, а вся логика ложится на QEMU.

Для начала несколько слов о вышеперчисленных решениях

  • AnywhereUSB — довольно неплохое решение, но дорогое, и имеет неприятние глюки, например бывает если расшаренная флешка отваливается, то переподключить ее обратно можно только физически вынув и вставив ее.
  • USB/IP — OpenSource проект. Вроде как был заброшен. По факту глючит довольно сильно. При разрыве соединения, машина частенько уходит в полнейший freezee, а windows показывает BSOD
  • USB Redirector — Замечательная софтина. Для расшаривания устройств с linux на linux бесплатна, во всех остальных случаях уже стоит денег, не так много как AnywhereUSB, но и не бесплатно как хотелось бы 🙂

Как видно есть из чего выбрать, но давайте же наконец попробуем еще один способ — UsbRedir?

Настройка виртуальной машины

Для того что бы было куда подключать экспортированные устройства, на виртуальной машине нужно создать необходимые usb-контроллеры:

  • uhci — для USB1.0
  • ehci — для USB2.0
  • xhci — для USB3.0

Для qemu (без libvirt)

Добавьте опции в команду запуска виртуальной машины:

Для libvirt

В исходном файле конфигурации виртуальной машины в узле &ltdevices&gt удаляем все USB контроллеры и добавляем следущий блок:

Кстати, если вы используете spice, то добавив к контроллерам еще 3 специальных девайса, станет возможен проброс usb-устройств с клиента spice на сервер.

Для qemu

Добавляем следующие опции в команду запуска виртуальной машины, помимо контроллеров определеных нами раньше:

Для libvirt

В исходном файле конфигурации виртуальной машины в узле &ltdevices&gt добавляем следующие опции, помимо контроллеров определеных нами раньше:

Теперь все готово для осуществления проброса.

Запуск сервера

Пакет usbredirserver можно найти в стандартных репозиториях практически во всех популярных дистрибутивах linux.

Вставляем флешку в компьютер, смотрим вывод usb-устройств:

Видим что пара vendorid:prodid равна 125f:c82a, а ядро определило флешке 003-001 usbbus-usbaddr соотвественно.

Теперь давайте расшарим ее на 4000 порт:

Подключение устройства к виртуальной машине

Через опции при запуске ВМ

Устройство которое нужно подключить к ВМ можно указать при запуске, добавив следующие опции в команду запуска

Для qemu
Для libvirt

Этот блок рамещается перед тегом &lt/devices&gt, рядом с контроллерами определенными нами раньше:
Его так же можно исполнить командой virsh attach-device

Или через qemu-monitor

Заходим на гипервизор и в qemu-monitor нашей машины выполняем следующие команды:

Что бы отключить флешку достаточно такой команды:

Читайте также:  Почему может не работать флешка юсб

На этом все, после данных шагов ваша ВМ увидит вашу флешку и сможет с ней нативно работать.

Если устройств много и все они одинаковые

Вот тут появилась интересная задачка, как пробросить несколько одинаковых девайсов на разные ВМ?
При этом, стоит отметить, все устройства имеют одинаковую пару vendorid:prodid, а пара usbbus-usbaddr совсем не постоянна, стоит только вынуть и вставить устройство, так оно сразу поменяет свой usbaddr.

Я решил ее при помощи udev.
Кстати если вы не совсем понимаете как работает udev, на Debian Wiki есть классная статья о udev

И так приступим

Для начала нам надо узнать серийник нашего устройства, по которому и будем идентифицировать его в udev:

И вставим наше устройство, после этого мы сразу увидим список переменных этого устройства которые udev любезно инициализировал для нас:

Информацию о серийнике и других аттрибутах можно получить и другим способом, но стоит учитывать что для написания правил мы будем использовать именно переменные из команды выше, а не аттрибуты из команды ниже. В противном случае не будет отрабатывать триггер remove при отключении устройства.

Теперь создадаим файл /etc/udev/rules.d/99-usb-serial.rules и запишем в него следующие правила:

Готово, теперь при подключении нашего устройства, оно будет автоматически шарится на нужный нам порт, а при отключении usbredirserver будет прекращать свою работу.
По аналогии добавляем и остальные устройства.

На этом все. Спасибо за проявленный интерес 🙂

Источник

Установка «USB Redirector» на Raspberry Pi

Предисловие

Итак, поставлена задача, из офиса пробросить USB устройство на удаленный 1С сервер, расположенный за пределами РФ, подключенный к внутренней сети офиса через VPN.
После недолгих и малозначемых событий я решил задействовать для решения этой задачи Raspberry Pi 3 model B (далее малинка) с USB Redirector на борту. И тут начались приключения, которые поможет обойти данный мануал.

1. Дистрибутив Raspbian Stretch с версией kernel 4.14.44-V7+ категорически не хочет дружить с редиректором. Ни под каким предлогом.

2. Для нормальной установки требуются linux-sources и linux-headers, которые отсутствуют в своем нормальном виде в стоковых репозиториях raspbian stretch.

И после нескольких часов перекапывания гугла я нашел решение.

Решение

Linux Kernel: 2.6.15 — 4.5
Architecture: x86, x86_64(amd64), arm, mips
RDP Requirements: rdesktop 1.6.0 and higher or FreeRDP 1.0.1 and higher

Соответственно заливаем на SD малинки версию raspbian подходящую по параметрам. В моем случае это Raspbian Jessie 2016-11-29. Скачать можно тут

Я надеюсь что люди читающие данную статью достаточно осведомлены о способах записи на флешку образа системы, поэтому опущу этот момент.

Запускаем малинку, проводим стандартную настройку (ssh, vnc, Wi-Fi, меняем стандартные пароли).

Далее обновляем список репозиториев и обновляем софт по необходимости

sudo apt-get update && sudo apt-get upgrade

Добавляем архитектуру arm

sudo dpkg —add-architecture arm

Устанавливаем linux-headers для Raspberry Pi

sudo apt-get install raspberrypi-kernel-headers

Скачиваем USB Redirector

Распаковываем и переходим в образовавшуюся директорию

tar -xvf usb-redirector-linux-arm.tar.gz
cd usb-redirector-linux-arm

Даем права установщику

sudo chmod +x installer.sh

И запускаем установку

sudo ./installer.sh install server

Установка завершена успешно!

Дальнейшую инструкцию по настройке usbsrv можно найти здесь

Источник

Оцените статью