Aspia - это OpenSource приложение для удаленного управления компьютерами внутри локальной сети и за её пределами благодаря реализации ID сервера для обхода NAT.

Не нашел на хабре актуальной информации об этом бесплатном аналоге таких программ как TeamViewer, Radmin, AmmyAdmin, AnyDesk, а та информация какая есть - уже давно устарела, поэтому попробую восполнить данную пустоту своим обзором/мануалом.

В своей публикации, я бы хотел поделиться с вами информацией о возможностях Aspia, общей структуре работы, а так же затронуть вопросы установки и настройки.

Возможности Aspia на момент написания статьи (версия 2.5.2):

  • Управление рабочим столом компьютера с подключением по IP или ID (через ID сервер). Возможен режим полного управления и режим просмотра.

  • Передача файлов через собственный файловый менеджер.

  • Просмотр информации о системе: оборудование, установленные приложения, службы, запущенные процессы, лицензии Microsoft, сетевые адаптеры, маршруты, подключения, сетевые ресурсы (шары), переменные окружения, журнал событий, пользователи (только локальные), группы пользователей и другая полезная информация.

  • Текстовый чат между оператором и подключенным хостом.

  • Разделение прав доступа через создание нескольких пользователей с различными уровнями доступа (отдельно настраиваются права на управление рабочим столом, его просмотр, файловый менеджер, информация о системе, текстовый чат).

  • Для хранения и управления адресами и идентификаторами, а так же логинами и паролями от удаленных компьютеров используются адресные книги с бесконечной вложенностью папок. Адресные книги хранятся в отдельных файлах и их легко можно передавать другим операторам. Так же, поддерживается шифрование адресной книги для безопасности данных.

  • Обход NAT с помощью настройки собственного ID сервера и возможностью подключения к удаленным ПК по ID, вместо имени хоста или IP.

  • Возможность балансировки нагрузки на ID сервер с помощью установки нескольких ретрансляторов на разных серверах (подробности ниже).

Кроме всего прочего, Aspia поддерживает Linux Debian (со стороны операторов и ID сервера), Windows (со стороны операторов, удаленных ПК, сервера), MacOS (только для операторов). Версии для Windows упакованы в корректный подписанный MSI, для Linux в Deb пакеты, а MacOS в Dmg. Актуальность пакетов поддерживается разработчиком.

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

Модульность Aspia или компоненты программы

Aspia состоит из нескольких компонентов. Каждый компонент отвечает за реализацию конкретного функционала.

  • Aspia Host (хост) - устанавливается на клиентских ПК, управление которыми необходимо осуществлять. Необходимый компонент, только Windows.

  • Aspia Console (консоль) - необходим для подключения к удаленным ПК и управления Aspia Router. Имеется адресная книга для сохранения списков удаленных ПК. Устанавливается на ПК операторов. Есть версии под Windows, Debian, MacOS.

  • Aspia Client (клиент) - легкая версия клиента для подключения к удаленным ПК. Устанавливается на ПК операторов. Есть версии под Windows, Debian, MacOS.

  • Aspia Router (маршрутизатор) - реализация ID сервера, используется для обхода NAT. Устанавливается на сервер. Есть версии под Windows и Debian.

  • Aspia Relay (ретранслятор) - работает совместно с Router и служит для балансировки нагрузки. При небольших нагрузках возможно использование Router + Relay на одном физическом сервере. Есть версии под Windows и Debian.

Aspia Router и Aspia Relay - схема работы и зачем нужны

Маршрутизатор всегда работает совместно с ретранслятором и не может работать без него. Aspia Relay служит для пропуска трафика между оператором и подключенным компьютером в обход Aspia Router. Оба компонента могут быть установлены как на одном сервере совместно, так и на разных для увеличения масштабируемости системы в целом и разделения нагрузки, в случае большого количества соединений.

Aspia Router работает исключительно как сигнальный маршрутизатор, т.е. знает обо всех подключенных к нему хостах/клиентах/консолях и при попытке создать соединение между клиентом/консолью и хостом, не пропускает его через себя, а перенаправляет трафик на Aspia Relay. Тем самым не нагружая свой канал, чтобы всегда быть доступным для «сигнальных соединений» от хостов и клиентов. При этом, к одному Aspia Router может быть подключено множество Aspia Relay.

Процесс выбора ретранслятора работает таким образом, что клиенту/консоли и хосту отдаётся адрес ретранслятора, на котором, в данный момент, больше свободных слотов для подключения. Количество свободных слотов (или размер пула), как и фактический внешний адрес ретранслятора настраивается в конфиге ретранслятора.

Какие компоненты Aspia выбрать

Для начала, вам необходимо определиться с тем, нужны ли вам Router и Relay.

  • Если все управляемые ПК расположены внутри периметра вашей локальной сети и/или подключены по VPN, то вам будет достаточно связки Aspia Host + Aspia Console.

  • Если у вас есть ПК, расположенные вне периметра вашей сети без прямого доступа к ним по VPN и выходящие в интернет через NAT, то помимо Aspia Host + Aspia Console, вам потребуется установить и настроить сервера Aspia Router + Aspia Relay.

Между Aspia Console и Aspia Client есть существенные отличия:

  • Aspia Client служит для быстрого подключения к удаленным компьютерам и только для этого.

  • Aspia Console - используется для более удобного подключения к удаленным компьютерам с помощью реализации адресной книги, а так же для управления Aspia Router.

Далее, можно переходить к установке компонентов.

Распространение Aspia Host на пользовательские ПК

Перед тем, как распространить Aspia Host, его необходимо предварительно установить на какой-либо компьютер, настроить и экспортировать настройки в json файл (или взять из %programdata%\aspia\host.json).

Далее, распространить MSI и конфиг на удаленные компьютеры (автоматикой или вручную).

Как распространить, если есть Active Directory

Все компоненты Aspia поставляются в корректно упакованных MSI, поэтому распространять их в доменной среде можно штатными механизмами Active Directory через установку программ в GPO (Конфигурация компьютера/Политики/Конфигурация программ/Установка програм).

Aspia Host все свои настройки хранит в конфигурационном файле, который находится в директории "%programdata%/aspia/host.json", а настраивать его можно как через GUI Aspia Host, так и вручную через конфиг.

Файл конфига можно распространить на ПК пользователей автоматически через GPO Active Directory (Конфигурация компьютера/Настройка/Конфигурация Windows/Файлы).

Как распространить, если нет Active Directory

Если в вашей среде нет Active Directory по каким-либо причинам, то вы можете положить заранее настроенный файл конфига рядом с msi файлом с названием aspia-host-config.json и при установке конфиг подтянется, а Aspia Host запустится сразу с актуальными настройками.

В некоторых случаях, необходимо выполнить настройку в два клика, для этого можно упаковать установщик MSI и конфиг для него в SFX архив (в нём необходимо настроить запуск инсталлятора, копирование конфига в %programdata%/aspia, перезапуск службы), далее отдать его пользователю. О том, как создать SFX архив хорошо расписано, например, на oszone.ru. На этом останавливаться не будем.

Для периодического обновления конфига, если необходимо, можно использовать Batch/PowerShell скрипты для замены конфига по расписанию. Скриптом можно подтягивать конфиг с расшаренной папки, с FTP или с web-сайта.

Обратите внимание, что в директории "%programdata%\aspia\" кроме самого конфига "host.json", при подключении к маршрутизатору, так же имеется файл "host_key.json" - он содержит идентификатор по которому Aspia Router авторизует хост и выдаёт ID. Этот файл копировать на другие компьютеры не нужно.

Распространение Aspia Console и адресной книги

Компонент Aspia Console не требует какой либо настройки, а вот адресную книгу обычно все хотят иметь общую.

Поэтому суть распространения Aspia Console такая же как и для Aspia Host. Только вместо конфига мы настраиваем адресную книгу и распространяем её либо доменом, либо в составе SFX архива, либо скриптами по расписанию.

Примечание: чтобы настроить автоматическое открытие адресной книги, необходимо щелкнуть ПКМ по вкладке с книгой и выбрать "Закрепить вкладку".

Настройка Aspia Router в связке с Aspia Relay

Aspia Router и Aspia Relay следует устанавливать на сервере, который будет всегда доступен для всех хостов/консолей/клиентов. В идеале, на выделенный/виртуальный сервер у какого-либо хостера, либо на сервер внутри локальной сети с пробросом портов, но тут есть нюанс.

Собственно, нюанс

Aspia Router и Aspia Relay между собой могут "общаться" по любым адресам, т.е. как "127.0.0.1" (в случае установки на одном сервере), так и по внутренним адресам вида "192.168.0.1", так и по внешним (если установлены на разных хостингах, например).

А вот общение консоли/клиента/хоста с маршрутизатором должно осуществляться исключительно через один и тот же адрес, который будет доступен всем участникам и если у вас есть внешние клиенты (вне периметра вашей локальной сети), то необходимо обязательно указывать в конфиге внешний адрес для подключений.

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

Установка и настройка Aspia Router на Debian Linux

Установка заключается в скачивании deb пакета из репозитория автора проекта, его установке, генерировании и настройке конфигурационного файла:

wget https://github.com/dchapyshev/aspia/releases/download/v2.5.2/aspia-router-2.5.2-x86_64.deb
sudo apt install ./aspia-router-2.5.2-x86_64.deb
sudo aspia_router --create-config

Открываем конфиг файл и правим параметры:

sudo nano /etc/aspia/router.json
Подробное описание всех параметров
  • AdminWhiteList — Список IP-адресов администраторов, которым разрешено подключаться к маршрутизатору. Адреса разделяются точкой с запятой. Если список пуст, то разрешены подключения от всех администраторов. Если список содержит элементы, то подключиться могут только администраторы, указанные в этом списке.

  • ClientWhiteList — Список IP-адресов клиентов, которым разрешено подключаться к маршрутизатору. Адреса разделяются точкой с запятой. Если список пуст, то разрешены подключения от всех клиентов. Если список содержит элементы, то подключаться могут только клиенты, указанные в этом списке.

  • HostWhiteList — Список IP-адресов хостов, которым разрешено подключаться к маршрутизатору. Адреса разделяются точкой с запятой. Если список пуст, то разрешены подключения со всех хостов. Если список содержит элементы, то подключаться могут только хосты, указанные в этом списке.

  • RelayWhiteList — Список IP-адресов ретрансляторов (Aspia Relay), которым разрешено подключаться к роутеру. Адреса разделяются точкой с запятой. Если список пуст, то разрешены подключения от всех ретрансляторов. Если список содержит элементы, то подключаться могут только ретрансляторы, указанные в этом списке. Вписываем IP адрес нашего ретранслятора (в случае расположения Aspia Relay на том же сервере — указываем 127.0.0.1).

  • Port — Порт, на котором будут приниматься входящие соединения. Если нет специфичной задачи, то менять не рекомендую.

  • PrivateKey — Приватный ключ шифрования роутера. Если у вас уже есть закрытый ключ, то напишите его здесь. Если это ваша первая установка, не меняйте значения. Ключ генерируется автоматически.

  • ListenInterface — IP адрес сетевого интерфейса, на котором должен работать Aspia Router. Укажите «0.0.0.0», чтобы Aspia Router работал на всех доступных интерфейсах.

После окончания настройки, включаем и запускаем службу Aspia Router:

sudo systemctl enable aspia-router
sudo service aspia-router start

В дальнейшем, чтобы подключить к маршрутизатору ретранслятор и хосты, потребуется указание публичного ключа, который расположен в файле "/etc/aspia/router.pub"

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

sudo journalctl -u aspia-router

Установка и настройка Aspia Relay на Debian Linux

Установка Aspia Relay не сложнее, чем Aspia Router: скачиваем deb пакет из репозитория автора проекта, устанавливаем, генерируем и настаиваем конфигурационный файл.

wget https://github.com/dchapyshev/aspia/releases/download/v2.5.2/aspia-relay-2.5.2-x86_64.deb
sudo apt install ./aspia-relay-2.5.2-x86_64.deb
sudo aspia_relay --create-config

Открываем конфиг файл и правим параметры:

sudo nano /etc/aspia/relay.json
Подробное описание всех параметров
  • RouterAddress — Адрес Aspia Router, который мы устанавливали ранее. Он может быть равен "localhost" или "127.0.0.1" , если маршрутизатор установлен на том же сервере. В случае же, если маршрутизатор и ретранслятор находятся на разных серверах, указывается тот адрес, по которому ретранслятор сможет подключиться к маршрутизатору.

    В большинстве случаев — это будет белый внешний IP или "127.0.0.1" для локального ретранслятора.

  • RouterPort — Порт маршрутизатора. Если вы не изменяли его при установке Aspia Router, то оставьте значение по-умолчанию.

  • RouterPublicKey — Публичный ключ шифрования роутера, который был сгенерирован при установке Aspia Router (хранится в файле /etc/aspia/router.pub).

  • ListenInterface — IP адрес сетевого интерфейса, на котором должен работать Aspia Relay. Укажите "0.0.0.0", чтобы Aspia Relay работал на всех доступных интерфейсах.

  • PeerAddress — Адрес, который пиры (хосты/консоли/клиенты) получат для подключения к ретранслятору. Тут указываем адрес, по которому хост и клиент/консоль смогут достучаться да нашего сервера. Рекомендую указать DNS имя, например что-то вроде: relay1.aspia.example.com, чтобы в случае переезда ретранслятора не пришлось менять много настроек.

  • PeerPort — Порт, через который пиры будут подключаться к серверу ретрансляции. Если нет специфичной задачи, то менять не рекомендую.

  • PeerIdleTimeout — Время таймаута, в минутах. Если в течение этого времени данные от пиров не поступают, соединение прерывается. Рекомендую, оставить значение по-умолчанию.

  • MaxPeerCount — Максимальное количество одновременных подключений, установленных между узлами (Хост/Консоль/Клиент). По-умолчанию установлено — 100. Тут всё зависит от ваших потребностей (количества администраторов и управляемых машин) и возможностей сервера, на который установлен Relay.

  • StatisticsEnabled — Включение возможности передачи статистики подключений на маршрутизатор. Для просмотра статистики используйте Aspia Console (раздел управления роутером -> Ретрансляторы). Поддерживается два параметра: "true" (включено) или "false" (выключено).

  • StatisticsInterval — Интервал, в секундах, для отправки статистики подключений на маршрутизатор. Поддерживаются значения от "1" до "60".

После окончания настройки, включаем и запускаем службу Aspia Relay:

$ sudo systemctl enable aspia-relay
$ sudo service aspia-relay start

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

$ sudo journalctl -u aspia-relay

Резервное копирование Aspia Router + Aspia Relay

При резервном копировании Aspia Router и Aspia Relay, необходимо сохранять следующие файлы:

/etc/aspia/router.json

Конфигурационный файл маршрутизатора

/etc/aspia/router.pub

Публичный ключ для подключений к маршрутизатору

/var/lib/aspia/router.db3

База данных маршрутизатора

/etc/aspia/relay.json

Конфигурационный файл ретранслятора

Настройка подключения к Aspia Router через Aspia Console

Для подключения консоли к маршрутизатору и получения возможности управления им, необходимо:

  • Открыть консоль, создать книгу и настроить её через меню "Правка -> Свойства адресной книги"

  • На вкладке "Маршрутизатор" поставить галку "Использовать маршрутизатор" и указать адрес маршрутизатора, имя пользователя и пароль (по-умолчанию "admin:admin")

  • Для управления маршрутизатором откройте меню "Инструменты -> Управление маршрутизатором"

    • На вкладке "Пользователи" обязательно измените пароль по-умолчанию на свой и создайте пользователей, если необходимо. Пользователи используются для подключения операторов к маршрутизатору.

    • На вкладке "Ретрансляторы" вы сможете увидеть подключенный к вашему маршрутизатору ретранслятор и информацию о нем, а если щелкнуть по нему в списке, то еще и список текущих установленных соединений.

    • На вкладке "Хосты" вы сможете увидеть список подключенных хостов и информацию о них.

Заключение

Благодаря программному комплексу Aspia, нашей компании удалось избавиться от зоопарка программ для удаленного управления и "запереть" сервис удаленного управления внутри собственной инфраструктуры, не используя сторонних сервисов, что крайне важно в нынешнее время.


Ссылки, которые будут вам полезны:

Комментарии (53)


  1. aborouhin
    17.01.2023 16:31
    +2

    Идея использовать опенсорсное решение, все компоненты которого под своим собственным контролем, очень привлекательна. Но вот отсутствие поддержки MacOS, Android и iOS в качестве клиентов, увы, не позволяет рассматривать Aspia в качестве универсального решения ни для личных нужд, ни в маленькой организации, где сплошной BYOD (и, соответственно, вездесущие Макбуки) + мобильный доступ к корпоративным ресурсам.


    1. lumian Автор
      17.01.2023 17:04
      +3

      Конкретно в нашем случае, мы не используем MacOS и iOS. Сотрудники поддержки работают либо из офиса с ПК, либо из дома с удаленки по VPN. Поэтому отсутствие поддержки Android как средства управления - это очень не критичная особенность для нас.

      Удаленные сотрудники, так же подключаются по VPN и работают через терминальный сервер и, в абсолютном большинстве, пользуются именно Windows.


      1. aborouhin
        17.01.2023 17:17
        -1

        Андроид как средство управления - да, странный кейс. Но вот удалённая настройка Андроид-телефонов (а если мы не про организацию, а про личные нужды - то ещё какого-нибудь SmartTV на Андроиде у мамы) - потребность прямо насущная. Учитывая многообразие версий Андроида, оболочек, почтовых программ и т.п. - написать универсальную инструкцию для того, чтобы пользователь всё сделал самостоятельно, не очень получается.


        1. lumian Автор
          17.01.2023 17:26
          +2

          Андроид как средство управления - да, странный кейс.

          Вполне неплохой вариант для работы с планшетов где-то в пути для небольших и средний компаний.

          Про организацию Aspia Host для Android. Однажды Дмитрий (разработчик Aspia) написал следующее:

          хост для андроид вообще очень сложная тема. полноценно и универсально возможно сделать только на рутованных устройствах. захват экрана - в целом не проблема, но вот ввод сделать невозможно нормально. сам по себе андроид не позволяет это делать на уровне системы. у отдельных производителей есть свой API (у каждого свой), но как правило оно по платным лицензиям предоставляется

          https://t.me/aspia_ru/19367


          1. aborouhin
            17.01.2023 17:33

            С планшета - наверное, но у меня планшет тоже под Windows, так что я со своей колокольни смотрю :)

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


          1. shlyakpavel
            17.01.2023 20:40
            +1

            Я не Android разработчик, но вроде как Android позволяет это сделать как Accessibility Service https://developer.android.com/reference/android/accessibilityservice/AccessibilityService


            1. QDeathNick
              17.01.2023 21:07
              +1

              Ну да, именно так работает у anydesk


            1. lentin
              17.01.2023 21:10
              +1

              Таким образом вы сможете управлять только своим собственным приложением. Ничего нажать вне него не получится. И варианта тут два: либо root доступ, либо использование API производителей устройств. Например, Samsung предоставляет такой API в рамках KNOX, но доступ к нему платный и доступен только юридическим лицам. И что-то подобное с другими производителями. Другими словами, чтобы сделать возможным управление Android устройством, необходимо договариваться с каждым из производителей в отдельности, причем зачастую на коммерческой основе. Сделать это в рамках open source решения не представляется возможным.


              1. Rsa97
                17.01.2023 21:49
                +1

                Ну, RustDesk как-то управляет андроидом. Требует только вручную запустить службу RustDesk Input.


              1. osmanpasha
                18.01.2023 02:05
                +1

                Ну почему, система Accessibility как раз придумана, чтобы обычными приложениями могли пользоваться люди с ограничениями, а это значит, например, что специальное приложение читает данные из приложений (и, например, озвучивает их), вводит данные в приложения после того, как пользователи их введут каким-то хитроумным способом. Т.е. примерно то, что нужно для удаленного управления.


        1. nickston
          17.01.2023 19:38
          +7

          приложение под андроид, как полнофункциональное средство, с телефона, не очень удобно. Но есть кейсы, когда и его хватает: 1) Допустим у человека работа встала, он весь в панике, а делов-то одну кнопку нажать. Не искать же комп или возвращаться?

          2) запущен длительный процесс, сидеть - ожидать? спокойно ушел, по своим делам, периодически подключаешься проверяешь статус, или оцениваешь время когда вернуться


    1. Garik_takse
      17.01.2023 17:05
      +6

      а мы макбуки и byod лесом шлем, ибо не по фэншую.


      1. aborouhin
        17.01.2023 17:12

        У всех свои ситуации. Если в результате такого подхода эксперт, которого руководитель полгода уговаривал к Вам перейти, Вашу организацию из-за этого лесом пошлёт - неудобно получится :) Ну или проще - если сотрудник сидит на другом конце света и вообще ни разу никого из организации живьём не видит, то кроме BYOD, особо вариантов нет.


        1. Garik_takse
          17.01.2023 17:38
          +1

          Вполне согласен, у нас своя атмосфера)


    1. temnikov_vasiliy
      17.01.2023 18:05

      anydesk есть под всё


      1. aborouhin
        17.01.2023 19:28

        Так им и пользуюсь. Но зависимость от стороннего сервиса в столь деликатной сфере несколько напрягает. Ну и вообще, как в марте прошлого года из-за проблем с оплатой сторонних сервисов стал судорожно селф-хостить всё, что возможно, - так не могу остановиться, хотя проблемы с оплатой уже сто раз решились :)


      1. QDeathNick
        17.01.2023 21:11
        +1

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


        1. lumian Автор
          17.01.2023 21:49

          Именно поэтому мы и выбрали полностью изолированное решение на базе Aspia


    1. vvzvlad
      17.01.2023 21:05

      Но вот отсутствие поддержки MacOS

      Вроде на сайте есть dmg


      1. aborouhin
        17.01.2023 21:14

        Так то, вроде, клиент, а не хост. Т.е. с мака я удалённо управлять виндой могу (но это мне как раз не надо), а наоборот нет (но надо).


        1. vvzvlad
          17.01.2023 21:18

          А, да, точно, перепутал хост с консолью.


  1. nikweter
    17.01.2023 17:11

    То есть, я не смогу с домашней винды на рабочую ubuntu подключиться?


    1. lumian Автор
      17.01.2023 17:14

      На данный момент только с домашней Ubuntu на рабочую винду :-)

      Многие ждут Aspia Host под Linux и мы ждем.


  1. rubikon
    17.01.2023 18:59
    +3

    просто скажу: rustdesk


    1. nickston
      17.01.2023 19:14

      Пробовал это приложение, может не разобрался, но пара замечаний:

      1) вообще нет ничего, это я про настройки и возможности, просто запустил и все.

      2) при подключении на хосте половиной приложений управлять не дает. Окно выбрать можно, но внутри окна ничего не нажимается. Те это смысл таких приложений и оно не работает.

      3) нет адресной книги

      4) не удобные настройки экрана

      5) как передавать файлы

      назвать это приложение альтернативой?


      1. rubikon
        17.01.2023 19:28

        п1. это прекрасно.

        п2. запущенные от другого пользователя - нужно установить от админа.

        п3. - на основном экране есть список

        п4. мы все нашли что нужно

        п5. соседняя кнопка с подключиться - "передать файл"

        пс. пользовались платным tewamview, после болта с оплатой нашли rustdesk и сделали свой сервер. все работает, бесплатно. отлично. посмотрели прилично программ.


        1. nickston
          17.01.2023 19:32

          п2. портативную версию запускал от админа, да, часть программ добавилось, а вот, к примеру, запущенный анидеск, так и остался не у дел.


    1. Rsa97
      17.01.2023 21:52

      У последнего релиза RustDesk 1.1.9 есть проблемы с клавиатурой в linux host. Они решены в 1.2.0, но он пока только в ночном билде.


  1. AngelNet
    17.01.2023 19:00

    Автору низкий поклон за перевод и систематизацию информации по сабжу, до этого момента я просто не понимал зачем разделять серверный компонент на router и relay.
    Но в плане удобства я предпочту оставаться на rustdesk self-hosted.


    1. lumian Автор
      18.01.2023 14:28
      +2

      Вот за "перевод" немного обидно стало...

      Из переведенного в моей публикации - только значения опций конфигов Router и Relay и то, в большей степени описание расширено или дополнено.

      Всё это результат того, что официальной документации почти нет, кроме README.pdf, который располагается рядом с релизами на Github разработчика. В большей степени, там информации достаточно для того, чтобы запустить и пользоваться, но вот чтобы разобраться с нюансами работы - информации мало. Публикация тут - это аккумулирование самой важной информации из ранее проделанной мною работы.


  1. addzt
    17.01.2023 19:08

    Meshcentral не рассматривали?


    1. lumian Автор
      17.01.2023 19:16

      Нет, не пробовали.


  1. nickston
    17.01.2023 19:19

    По поводу, что статьи не видел.

    Помниться автор сам тут писал статью еще, когда выпустил первую версию (не 1.0, а 0.1) и как раз приглашал желающих поучаствовать.


  1. nickston
    17.01.2023 19:22

    для статистики есть еще supremo control, ограничения такие же как у всех


    1. lumian Автор
      18.01.2023 14:29

      Иностранная компания - идут лесом, в текущей ситуации.


  1. Renaissance
    17.01.2023 19:41
    +2

    Есть несколько "детских" болячек (присутствующих также и в rustdesk, например доп. кнопки мыши в удаленных сеансах не работают), но в целом очень классно для бесплатного решения.


    1. lentin
      17.01.2023 21:13
      +2

      Кнопки Back/Forward на мышках работают начиная с версии 2.5.0.


      1. Renaissance
        17.01.2023 21:23

        Круто, спасибо, значит пора уже обновиться до 2.5.x


  1. AlexanderS
    17.01.2023 22:19
    +2

    Хотелось бы уточнить несколько вопросов.
    1) Где хранятся конфигурации хоста и клиента? Если я включаю пароль защиты конфигурации хоста — она как-то/где-то шифруется или это просто доступ к GUI хоста?
    2) Вытекает из предыдущего пункта — можно ли сделать хост и клиента портабельными?
    3) У клиента есть поддержка ключей командной строки, но я не нашёл опций для роутера/релея. Это планируется?
    4) Как хост подключить к маршрутизатору понятно. Но непонятно как будет сформирован ID. Его не я задаю? Он сам как-то назначается?
    5) Я не понял нужно ли настраивать хост и клиента на релейный сервер. Или подключаясь к роутеру обмен через свой релей автоматом идёт, который роутер подтянет? Просто в настройках релея есть PeerAddress/PeerPort — их куда-то нужно вводить или по этому IP:Port хост/клиент автоматом будут соединяться получая их от роутера? Тогда связку IP:Port нужно в файрволле открывать на всех трёх (релейный сервер, хост, клиент) машинах? В этом вопросе вообще как-то всё неясно.


    1. Nik-An
      18.01.2023 13:34

      Поддерживаю п.2, очень хотелось бы видеть портативные версии!


    1. lumian Автор
      18.01.2023 14:19

      1) Где хранятся конфигурации хоста и клиента? Если я включаю пароль защиты конфигурации хоста — она как-то/где-то шифруется или это просто доступ к GUI хоста?

      Конфиг хоста лежит в %programdata%/aspia. Конфиг не шифруется, зашифрованы только пароли. Конфигурация хоста не является критичной, т.к. даже если ею кто-то завладеет, установит себе хост и подсунет конфиг, то максимум, что он сможет получить - это подключиться к Aspia Router в качестве хоста и ожидать входящего соединения.

      Конфиг клиента заключается лишь в данных для подключения к Aspia Router, лежит в %appdata%\aspia\router_config.json. Зашифрован с возможностью расшифровки только под текущим пользователем текущего компьютера.

      2) Вытекает из предыдущего пункта — можно ли сделать хост и клиента портабельными?

      На данный момент нет portable версии.

      3) У клиента есть поддержка ключей командной строки, но я не нашёл опций для роутера/релея. Это планируется?

      Все свои пожелания вы можете отправить в issues.

      4) Как хост подключить к маршрутизатору понятно. Но непонятно как будет сформирован ID. Его не я задаю? Он сам как-то назначается?

      ID формируется методом инкремента в базе данных. От 1 и далее по-порядку. Как изменить это поведение описано у меня в FAQ.

      5) Я не понял нужно ли настраивать хост и клиента на релейный сервер. Или подключаясь к роутеру обмен через свой релей автоматом идёт, который роутер подтянет?

      Хост и клиент настраиваются на подключение к Router. Relay самостоятельно подключается к Router.

      Просто в настройках релея есть PeerAddress/PeerPort — их куда-то нужно вводить или по этому IP:Port хост/клиент автоматом будут соединяться получая их от роутера?

      Получают от роутера автоматически после проверки соединения.

      Вот выдержка из статьи, тут максимально просто всё указано:

      PeerAddress — Адрес, который пиры (хосты/консоли/клиенты) получат для подключения к ретранслятору. Тут указываем адрес, по которому хост и клиент/консоль смогут достучаться да нашего сервера. Рекомендую указать DNS имя, например что-то вроде: relay1.aspia.example.com, чтобы в случае переезда ретранслятора не пришлось менять много настроек.

      PeerPort — Порт, через который пиры будут подключаться к серверу ретрансляции. Если нет специфичной задачи, то менять не рекомендую.

      Тогда связку IP:Port нужно в файрволле открывать на всех трёх (релейный сервер, хост, клиент) машинах? В этом вопросе вообще как-то всё неясно.

      Про порты подробно расписано у меня в FAQ:

      Aspia Router: TCP 8060. Используется для входящих подключений ретрансляторов (Aspia Relay) и сигнальных подключений хостов (Aspia Host), в т.ч. получения ID.

      Aspia Relay: TCP 8070. Используется для входящих подключений хостов (Aspia Host).

      Aspia Host: TCP 8050. Используется для входящих подключений операторов через клиентов (Aspia Client) и консолей (Aspia Console).

      Какие порты и в каких направлениях открывать, тут уже вам лучше знать. Всё зависит от того где установлен маршрутизатор и ретранслятор, откуда подключаются хосты, клиенты и т.д. и т.п.


      1. AlexanderS
        18.01.2023 20:23

        Спасибо за ответы! Многое прояснилось.


  1. darkseibo
    17.01.2023 22:53
    +1

    Хм, интересно, а что на счёт Light Manager'а автор думает? Просто мне он по функционалу зашёл больше для управления 20+ компании по локали или ВПН (не большая фирма).


    1. lumian Автор
      18.01.2023 14:35

      Цитата с сайта LiteManager:

      LiteManager Free — включает все основные функции удаленного доступа к рабочему столу программы LiteManager и предоставляет 30 бесплатных лицензий для удаленного доступа к 30 компьютерам, и более при наличии лицензионного ключа.

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

      Платить, как обычно, никто не хочет. Поэтому выбор и был сделан в сторону Aspia.


  1. wertolls
    17.01.2023 23:26

    Добрый день!

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

    Очень нужна возможность ввода пароля при запуске клиента из командной строки, хочется просто ввести:

    "aspia_console --address <адрес> --port <порт> --username <имя_пользователя> --password <пароль> --session-type <тип_сессии>"

    и просто подключиться к удаленному ПК, а не вводить каждый раз пароль вручную или искать ПК с сохраненным паролем где-то в адресных книгах.

    Да, возможно это покажется это небезопасным, но это проблема пользователя, а не разработчика. Дайте пользователю возможность выстрелить себе в ногу.

    Вот эта одна мелочь сильно отталкивает от использования сего решения, без нее работа с большим количеством пк выглядит очень неудобной.


    1. lumian Автор
      17.01.2023 23:30

      В консоли можно сохранить логин и пароль в книге и наследовать его при настройке хостов.

      Если необходимо принципиально использовать параметры командной строки, то aspia client вам в помощь. Разбирал этот вопрос в своем FAQ.


      1. wertolls
        17.01.2023 23:35
        +1

        О, больше спасибо за ответ. Теперь выглядит как то, что нужно.


  1. Refridgerator
    18.01.2023 05:37

    Windows XP поддерживается?


    1. lumian Автор
      18.01.2023 13:35

      Нет. Не меньше Windows 7.


      1. Refridgerator
        18.01.2023 13:42
        +2

        Жаль, иначе бы перешёл. Есть куча железа, на которое накатить 7-ку физически невозможно.


  1. LevOrdabesov
    18.01.2023 12:39

    А шифрование соединения есть?


    1. lumian Автор
      18.01.2023 13:57

      Шифрование есть, как именно оно реализовано не подскажу.


  1. symrak009
    20.01.2023 06:41
    +1

    у себя на работе внедрил Аспию и успешно пользуюсь уже более двух лет - мне нравится :)