Xrdp-usb: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
(Добавлено описание и предупреждение об ограничении использования)
Строка 1: Строка 1:
Данный компонент пробрасывает широкий спектр устройств, начиная от USB-веб-камер, до USB-токенов и смарт-карт.
{{Attention|Проброс будет работать только в рамках локальной сети, так как требует доступность клиентского компьютера с сервера}}
Схема работы подключения usb-устройств через xfreerdp. Все дальнейшие действия выполняются под рутом '''su-'''.
Схема работы подключения usb-устройств через xfreerdp. Все дальнейшие действия выполняются под рутом '''su-'''.



Версия от 08:50, 26 ноября 2021

Данный компонент пробрасывает широкий спектр устройств, начиная от USB-веб-камер, до USB-токенов и смарт-карт.

Внимание! Проброс будет работать только в рамках локальной сети, так как требует доступность клиентского компьютера с сервера


Схема работы подключения usb-устройств через xfreerdp. Все дальнейшие действия выполняются под рутом su-.

Терминальный сервер - сервер
Клиентский сервер - клиент

Перед началом работы, необходимо обновить систему. Обновить систему необходимо как на терминальном сервере (Альт 8 СП), так и на клиентском сервере (в моем случае это Альт Образование)

# apt-get update

На терминальном сервере (Альт 8 СП) устанавливаем xrdp-usb-session:

# apt-get install xrdp-usb-session

xrdp-usb-session для сеанса xrdp-sesman добавляет запуск автоподключения всех USB-устройств с клиента. Далее, после установки xrdp-usb-session необходимо перезапустить службу xrdp-sesman.

Systemctl restart.png

Теперь, переходим к терминальному клиенту (В моем случае, Альт Образование). Устанавливаем xrdp-usb-terminal:

# apt-get install xrdp-usb-terminal

А так же, после установки xrdp-usb-terminal, нам необходимо добавить нашего пользователя в группу disk:

# usermod -a -G disk alt-1       (там где alt-1, необходимо ваше имя пользователя)

Далее, после успешной установки xrdp-usb-terminal и после того, как мы добавили нашего пользователя в группу disk, нам необходимо перезагрузить систему (чтобы все модули загрузились) и служба usbipd запустилась. По умолчанию никакие устройства не передаются. Чтобы они передавались, в терминале запускается lsusb и смотрятся идентификаторы.


Lsusb.png


Необходимые для нас данные на скриншоте сверху это идентификатор (в нашем случае это ID 13fe:4300). Теперь нам нужно отредактировать файл в /etc/xrdp-usb

# vim /etc/xrdp-usb

Etc-xrdp-usb.png

Указывать можно сколько угодно идентификаторов, но необходимо быть осторожным с идентификаторами мыши и клавиатуры. Если они будут проброшены, то локально они не будут доступны.

Далее, необходимо установить openuds-client на терминальный сервер (Альт 8 СП). Openuds при подключение самостоятельно экспортирует указанные устройства.

Для того, чтобы обратиться к терминальному серверу (через Remmina или xfreerdp), то перед подключением необходимо запустить программу usbip-export (на клиенте). Далее, со стороны клиента подключаемся к терминальному серверу:

# usbip attach -r 192.168.0.1 -b 3-2

-r Является ip адресом терминального сервера -b Является идентификатор устройства, который мы отредактировали в файле /etc/xrdp-usb , а так же, который был подтвержден посредством команды usbip-export


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