Сейчас 262 гостей и 2 зарегистрированных пользователей на сайте

Пробрасываем USB–ключ в облако (Linux клиент — Linux сервер)

Заказчику потребовалось подключить USB–ключ для банковской системы к Linux–серверу в облаке, где он разворачивает свой разработанный продукт. Напрямую подключить USB–ключ к виртуальной машине нельзя — она работает в отказоустойчивом кластере и может быть смигрирована на любой из хост-серверов без даунтайма.

Давайте посмотрим, как реализовать проброс USB–ключа по сети в виртуальную машину с Linux в облаке Azure Pack Infrastructure от InfoboxCloud.

Раз подключить ключ к виртуальной машине нельзя — его нужно подключить к чему-то реальному. Есть аппаратные решения, например AnyWhere USB, но заказчик выбрал более универсальное решение: выделенный сервер в ЦОД Infobox (что для одного ключа получилось дешевле — аппаратные требования к выделенному серверу для такой задачи минимальны — можно использовать самый дешевый сервер с софтовым Raid).

Для проброса использовалось ПО USB Redirector (версия для Linux бесплатна). На выделенный сервер и в виртуальную машину в облаке была установлена Ubuntu 16.04 LTS и были применены все обновления.
apt-get update && apt-get -y upgrade && apt-get -y dist-upgrade
Для установки USB Redirector потребуются исходные тексты ядра, установите их:
apt-get install linux-source
Теперь необходимо отключить обновления ядра ОС, так как они могут сломать работу USB Redirector (служба проброса после обновления ядра не будет запускаться до переустановки), если необходимо — их можно устанавливать вручную переустанавливая USB Redirector.
sudo apt-mark hold linux-image-generic linux-headers-generic

Установка и настройка USB Redirector на сервере с подключенным ключом USB

Скачайте USB Redirector:
wget http://www.incentivespro.com/usb-redirector-linux-x86_64.tar.gz
Распакуйте:
tar -xvzf usb-redirector-linux-x86_64.tar.gz
Перейдите в папку с ним:
cd usb-redirector-linux-x86_64/
Разрешите запуск инсталлятора:
chmod +x installer.sh
Устанавливаем сервер:
./installer.sh install-server
Если все прошло корректно, вы увидите сообщение об этом.

Добавьте службу проброса в автозагрузку, если ранее этого не произошло:
systemctl enable rc.usbsrvd
Подключив USB–ключ к выделенному серверу проверим какие USB–устройства доступны:


Есть 2 варианта расшарить устройство по сети.

Вариант 1:
usbsrv -share -vid 2022 -pid 0202 -usbport 2-1
В этом случае мы привязываемся к конкретному id устройства и порту, если включить usb-ключ в другой порт сервера — номер usb порта сменится и работать не будет.

Вариант 2:
usbsrv -share 1
В этом случае мы привязываемся только к id устройства. Теперь USB–устройство расшарено по сети.

Конечно делать его доступным для всех пользователей Интернет не правильно, поэтому добавим ограничения в firewall:
ufw allow 22
ufw allow from *.*.*.* to any port 32032
ufw enable
Где вместо *.*.*.* нужно написать адрес сервера, с которого разрешено подключение.

Установка клиента USB Redirector в облаке

Скачайте USB Redirector:
wget http://www.incentivespro.com/usb-redirector-linux-x86_64.tar.gz
 
Распакуйте:
tar -xvzf usb-redirector-linux-x86_64.tar.gzПерейдите в папку с ним:
cd usb-redirector-linux-x86_64/
Разрешите запуск инсталлятора:
chmod +x installer.sh

Устанавливаем сервер:
./installer.sh install-client

Если все прошло корректно, вы увидите сообщение об этом.

Добавьте службу проброса в автозагрузку, если ранее этого не произошло:
systemctl enable rc.usbsrvd
Теперь добавим наш сервер:
usbclnt -addserver **.**.**.**:32032
Где вместо **.**.**.** нужно указать ip–адрес сервера.

Теперь можно посмотреть список доступных устройств:
usbclnt -list


Видим, что на сервере 1 доступно устройство 1.

Подключаем:
usbclnt -connect 1-1
Включаем автоматическое соединение с устройством:
usbclnt -autoconnecton 1-1
Проверяем:
usbclnt -list



USB–ключ был успешно проброшен в виртуальную машину в облаке.

Добавить комментарий


Защитный код
Обновить

Войти

Войти


Предложить новость или материал - может только зарегистрированный пользователь