Делаем своими руками: KVM Over IP при помощи Raspberry Pi

в 19:42, , рубрики: KVM Over IP, Raspberry Pi, vpn, Блог компании Selectel, Тестирование веб-сервисов
Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 1

На Хабре вряд ли стоит рассказывать о программах удаленного доступа к ПК, вроде TeamViewer. Но все это работает лишь в среде операционной системы. А вот доступа к BIOS, возможности установки, переустановки и прочих операций с операционной системой нет. Для всего этого есть иные решения. Одно из самых доступных — KVM Over IP.

Конечно, если покупать брендовую систему, то получится дорого. Но есть иное решение — создание собственной системы на основе «малинки». Это решение предложил разработчик Максим Деваев (Maxim Devaev). Он собирается начать продавать эту систему по $130. Но собрать все это можно и самостоятельно — главное запастись собственными компонентами. Под катом — описание того, как это сделать.

Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 2

Прототип Pi-KVM без корпуса

Необходимые компоненты

  • Raspberry Pi 4 или Raspberry Pi Zero
  • Карточка памяти microSD с объемом памяти 16 ГБ.
  • Переходник HDMI-to-CSI.
  • Сплиттер USB female to dual male Type-A.
  • Кабель
  • USB C to Type-A
  • Источник питания 5В, 3А с портом USB Type-A.

Настройка SD-карты для Raspberry Pi KVM Over IP


Все, что нужно для настройки можно загрузить из сети в виде образа диска и записать потом этот образ на карточку. Сделать это можно при помощи Raspberry Pi или balenaEtcher (есть и другие варианты).

  1. Загрузить образ диска Pi-KVM. Вот ссылка. На исходном ресурсе есть несколько версий образов — для разных версий Pi. Кроме того, выбирать нужно исходя из того, что вы используете — HDMI-to-CSI или HDMI-to-USB.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 3
  2. Распаковываем образ.
  3. Запускаем Raspberry Pi Imager.
  4. Теперь нужно выбрать опцию “Choose OS” → “Use Custom” и, соответственно, использовать образ. Еще требуется определить SD карту при помощи не самой сложной опции “Choose SD Card”.
  5. Write — прошиваем.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 4

Собираем и настраиваем Raspberry Pi for KVM Over IP


Теперь можно приступить к сборке «железа». Здесь тоже все просто.

Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 5

  1. Соединяем CSI шлейф нашего HDMI-to-CSI-2 бриджа с портом камеры «малинки». Чтобы убедиться, что все правильно подключено, лучше посмотреть на фото. Если вы используете HDMI-to-USB, то просто подключите коннектор к разъему USB. Ну или в случае Pi Zero — подключаем microUSB к USB Type-A.
  2. Нужно заизолировать 5В пин на коннекторе USB Type-A сплиттера. Проще всего сделать это при помощи тонкого изолирующего материала. Можно просто убрать и контакты, которые ведут к этим пинам, но все же безопаснее и проще — просто заизолировать коннектор. Если этого не сделать, то USB порт компьютера может быть поврежден.
  3. Подключаем кабель USB C-to-A к Type-A
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 6
  4. Подключаем кабель USB-C к порту USB-C «малинки».
  5. Подключаем коннектор Type-A к питанию.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 7
  6. Подключаем USB Type-A коннектор и HDMI ПК, которым нужно управлять.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 8
  7. Наконец, вставляем карту памяти и включаем «малинку».

Настройка ПО Pi-KVM


Теперь мы можем начать работу с Pi-KVM. Первая загрузка будет довольно продолжительной, так что придется подождать. Но в итоге все запустится, после чего можно начать настройку.
1. Определяем IP «малинки». Собственно, вряд ли на Хабре нужно рассказывать, как это сделать, но на всякий случай — сделать это можно при помощи роутера, в панели которого отображаются IP всех подключенных девайсов.

Кроме того, можно запустить командную строку Windows и выполнить команду “arp -a”. После этого вы увидите все адреса устройств, подключенных к локальной сети. Любой девайс, адрес которого начинается с b8:27:eb: или dc:a6:32: и является Raspberry Pi.

Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 9

2. Вводим IP в браузере клиентского ПК, после чего открывается страничка входа.

3. Дефолтные значения входа — admin и admin.

Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 10

4. Кликаем по иконке KVM.

Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 11

Теперь должен загрузится экран, как показано на скриншоте ниже. Он предоставляет доступ к удаленному ПК при помощи меню. Можно получить и больше меню, чем указано на картинке, вот ссылка, где рассказывается, как это сделать.

Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 12

Чем больше объем вашей SD-карты, тем больше образов ISO можно загрузить и использовать в дальнейшем, расширяя функциональность системы.

Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 13

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

Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 14

Для расширения функциональности системы, например, использования дополнительных дисплеев, можно использовать подключение HDMI 4.

Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 15

А вот прототип нашей системы без корпуса и 4-х портовый KVM switch.

Обновление Pi-KVM до последней версии


Pi-KVM часто получает обновления, поэтому постарайтесь держать актуальную версию. Для обновления нужно:

  1. Выбираем иконку консоли в главном меню Pi-KVM, после чего запускается консоль.
  2. Вводим «su» и получаем суперпользователя. Пароль — root
  3. Вводим “rw” и открываем систему для записи.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 16
  4. Обновляемся при последовательном вводе команд “pacman -Syu” и “Y”.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 17

    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 18

Удаленное управление


Лучше всего использовать такой инструмент, как Tailscale. Он удобен, бесплатен для обычных пользователей, плюс с его помощью можно без труда развернуть небольшую VPN-сеть.

  1. Заводим учетку в Tailscale, выбирая бесплатный тариф Solo Plan для частного использования.
  2. Нажимаем на иконку консоли в главном меню Pi-KVM
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 19
  3. Становимся супер-пользователем при помощи «su» и пароля «root»
  4. Открываем систему для записи.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 20
  5. Вводим команду “pacman -S tailscale-pikvm” для запуска VPN-сервиса на нашей системе.
  6. Вводим «reboot» для перезагрузки.
  7. После этого нужно снова получить доступ к системе, повторяем шаги 1-4.
  8. Вводим “systemctl enable --now tailscaled” для активации сервиса.
  9. Инициализируем начало работы, вводя “tailscale up”.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 21
  10. Авторизуем все.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 22
  11. Если все прошло хорошо, то вы увидите сообщение «Success» в консоли.
  12. Заходим вот по этой ссылке для того, чтобы увидеть IP, назначенный нашему VPN.

Сторона клиента


Теперь настроим tailscale на клиенте. Tailscale поддерживает большинство операционных систем, включая windows, mac и linux.

  1. Загружаем версию для своей ОС по этой ссылке.
  2. Переходим по этой ссылке для отображения IP VPN.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 23
  3. Вводим IP в строку браузера, что позволяет подключиться к PI-KVM.
    Делаем своими руками: KVM Over IP при помощи Raspberry Pi - 24

В целом, это и все. Благодаря этой инструкции получаем недорогой, быстрый и простой в использовании KVM over IP сервис. Если нужны дополнительные подробности, то они доступны по этой ссылке.

Автор: Илья Гущин

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js