Задать вопрос
Ответы пользователя по тегу Удаленный доступ
  • Есть ли прога для фонового доступа к удаленному компьютеру?

    @rPman
    Побуду душнилой.

    При использовании серверных версий windows (того, куда ты хочешь удаленно подключаться), штатный инструмент удаленного управления RDP позволяет подключиться к новому сеансу а администратору подключаться к чужому (mstsc /shadown), так как это штатный механизм, никаких иконок в трее не будет, но будет запрос подтверждения в момент подключения
    Ответ написан
    4 комментария
  • Как по локалке управлять другим компьютером?

    @rPman
    rdp ограничивает работу с удаленной машиной в использовании видеоускорителя (объяснить сложно, но игры будут тупить к примеру), так же если машина не последние версии windows server и видеокарта не серверная, то варинтов с rdp и нет.

    Есть другой подход, передача содержимого экрана, vnc или, рекомендую, moonlight+sunshine (для теста попробуйте steam link, он работает по той же технологии), работает идеально в локальной сети, подключаться можно даже с доисторических android планшетов, т.е. максимально кроссплатформенное решение
    Ответ написан
    5 комментариев
  • Какое приложение для удаленного доступа к экрану андроид девайсов рекомендуете?

    @rPman
    попробуй Chrome Remote Desktop, это отдельное приложение, работает на основе гугловского аккаунта, должно работать в любых комбинациях android - pc, но настроить разрешения на удаленное управление придется попотеть.

    p.s. вдруг если кто не знает, гугл предустанавливает на все android смартфоны приложение meet, позволяет совершать аудио видео звонки, включая показ содержимого экрана (однократно нужно будет выдать на это разрешение), управлять в этот момент удаленно не получится но можно голосом сказать, вот нажми теперь сюда
    Ответ написан
    Комментировать
  • Какие есть способы обеспечить графический удаленный доступ с минимальной задержкой?

    @rPman
    Как исправить «лагание» 3ds Max при удалённой работе на виртуальной машине?
    Не лагающие протоколы передачи экрана (для работы с графикой), требуют минимум гигабитные сети и алгоритмы, кодирующие изображение видеокодеками.

    Простейший vnc не подойдет.

    Хорошую скорость могут дать к примеру майкрософтовский rdpx (только с серверными ревизиями windows, только с прямым доступом к серверным видеокартам), или что то типа teamviewer/anydesk, попробуй parsec, так же мне очень понравилась работа steam link remote play (бесплатно, win/linux, заточена на realtime игры, и клиенты могут работать на очень старом железе, например планшетниках android, т.е. поддержка очень качественная, хотя что то я не уверен что какая-нибудь малинка тут справится).

    Открытые решения - например sunshine+moonlight (говорят лучшая замена steam link), rustdesk


    p.s. когда графические приложения были поголовно win32 без самостоятельного рисования контролов (теперь уже 100% не так), то майкрософтовский rdp работал ну просто идеально, даже на слабых сетевых каналах

    В linux есть x2go, надстройка над xserver (который сам по себе сетевой но требует очень хорошие пинги) очень оптимизированно работает, но так же не подходит для графических приложений (тот же браузер или cad)
    Ответ написан
    2 комментария
  • Как передать информацию о событии с клиента по RDP (без особых прав)?

    @rPman
    нагуглил, есть виртуальные каналы, которые можно поднимать между терминальной сессией и машиной клиента.
    На основе этого кода claude ai (после некоторой беседы со мной, как же это шикарно что теперь так можно) вот тебе два приложения, не проверял:

    Файл server.cpp (запускается на сервере терминальных служб):
    #include <windows.h>
    #include <wtsapi32.h>
    #include <stdio.h>
    
    #pragma comment(lib, "wtsapi32.lib")
    
    DWORD OpenDynamicChannel(LPCSTR szChannelName, HANDLE *phFile);
    
    int main(int argc, char* argv[])
    {
        if (argc < 2) {
            printf("Usage: server.exe <message>\n");
            return 1;
        }
    
        HANDLE hFile;
        DWORD rc = OpenDynamicChannel("DVC_Sample", &hFile);
        if (ERROR_SUCCESS != rc) {
            printf("Failed to open dynamic channel. Error: %lu\n", rc);
            return 1;
        }
    
        printf("Waiting for client to connect...\n");
    
        // Wait for the client to connect and read something
        char buffer[1];
        DWORD bytesRead;
        ReadFile(hFile, buffer, 1, &bytesRead, NULL);
    
        // Send the message to the client
        const char* message = argv[1];
        DWORD bytesWritten;
        WriteFile(hFile, message, strlen(message), &bytesWritten, NULL);
    
        CloseHandle(hFile);
        return 0;
    }
    
    // Open a dynamic channel (same as in the original code)
    DWORD OpenDynamicChannel(LPCSTR szChannelName, HANDLE *phFile)
    {
        // ... (implementation same as in the original code)
    }

    Файл client.cpp (запускается на клиентской машине):
    #include <windows.h>
    #include <wtsapi32.h>
    #include <stdio.h>
    
    #pragma comment(lib, "wtsapi32.lib")
    
    DWORD OpenDynamicChannel(LPCSTR szChannelName, HANDLE *phFile);
    
    int main()
    {
        HANDLE hFile;
        DWORD rc = OpenDynamicChannel("DVC_Sample", &hFile);
        if (ERROR_SUCCESS != rc) {
            printf("Failed to open dynamic channel. Error: %lu\n", rc);
            return 1;
        }
    
        printf("Connected to server. Waiting for message...\n");
    
        // Notify the server that we're ready
        const char ready = 'x';
        DWORD bytesWritten;
        WriteFile(hFile, &ready, 1, &bytesWritten, NULL);
    
        // Read the message from the server
        char buffer[1024];
        DWORD bytesRead;
        ReadFile(hFile, buffer, sizeof(buffer), &bytesRead, NULL);
        buffer[bytesRead] = '\0';
    
        MessageBoxA(NULL, buffer, "Message from Server", MB_OK);
    
        CloseHandle(hFile);
        return 0;
    }
    
    // Open a dynamic channel (same as in the original code)
    DWORD OpenDynamicChannel(LPCSTR szChannelName, HANDLE *phFile)
    {
        // ... (implementation same as in the original code)
    }

    Сценарий работы:
    * Сначала запускается server.exe на сервере терминальных служб с аргументом - текстовым сообщением, которое нужно отправить клиенту.
    * Серверное приложение ожидает, пока клиент не подключится и не отправит символ 'x', указывающий, что он готов принять сообщение.
    * Затем серверное приложение отправляет указанное в командной строке сообщение клиенту и завершается.
    * Клиентское приложение запускается на клиентской машине, подключается к тому же виртуальному каналу "DVC_Sample" и отправляет серверу символ 'x'.
    * Клиентское приложение ожидает получения сообщения от сервера.
    * После получения сообщения, клиентское приложение показывает его в MessageBox и завершается.

    Обратите внимание, что в этом примере я использовал синхронные вызовы ReadFile/WriteFile для простоты. В реальных приложениях рекомендуется использовать асинхронные вызовы для избежания блокировок.

    p.s. кранты нашей цивилизации, мы разучимся думать, ведь это так удобно, когда машина за тебя вот ТАКОЕ делает.
    Ответ написан
  • Как настроить удаленное управление ноутбуком с закрытой крышкой?

    @rPman
    Попробуй удаленный рабочий стол mstsc (есть в windows по умолчанию), для этого в настройках системы разреши удаленное управление и укажи пользователя (у него должен быть пароль) которому это будет доступно

    Удаленное управление работает без монитора, для рабочих ревизий ОС windows видеокарта так же не будет задействована (с оговорками, игры нет но программы использующие ее для вычислений могут заработать).
    Ответ написан
    Комментировать
  • Как заблокировать сайты в локальной сети по белому списку?

    @rPman
    Можно отключить в настройках машин default route или прописать неправильный (это можно сделать настройками роутера, если он это позволяет, так как обычно роутер автоматически себя раздает как default route по dhcp), это можно сделать и вручную или скриптом, используя route, что то типа
    route delete 0.0.0.0 mask 0.0.0.0 ip_адрес_шлюза
    route add 0.0.0.0 mask 0.0.0.0 ip_адрес_шлюза
    но удаление не сохраняется в реестре, т.е. делать это скриптом при старте.. проще изменить роутер на неправильный, настроив ip адрес статическим (да знаю криво, но в win10 мне кажется уже нельзя, в win7 я помню скриптами это делал без проблем при включенном dhcp)

    Неправильный шлюз отключит интернет на машине, при использовании dns сервера от роутера, доменные имена продолжат разименовываться в ip. В крайнем случае можно добавить dns сервера в белый список.

    а затем накидать ip адреса из белого списка, прописав для них правильный шлюз
    route /p add ip_адрес_сайта_в_интернете mask 255.255.255.255 ip_адрес_правильного_шлюза

    можно вместо маски указать другую, чтобы добавить в белый список целую подсеть.
    вместо ip адреса сайта можно использовать его доменное имя, оно будет разименовано в ip адрес в момент выполнения команды.
    ключ /p позволяет выполнить эту команду однократно, она будет сохранена в реестре (это работает только для route add) но лучше запускать этот скрипт при включении компьютера без использования /p и обновлять его централизованно или даже хранить где то в сети

    Но помним, что крупные сайты могут иметь гуляющий ip адрес для баллансировки нагрузки на уровне dns, в общем создавать белый список нужно тщательно
    Ответ написан
    Комментировать
  • Как удаленно включить стационарный пк с андроид устройства?

    @rPman
    Если у тебя нет человека, который сможет физически нажать reset и power on то не советую использовать WOL.

    Правильное решение - аппаратный выключатель, либо самодельный (дешевле - на основе любого копеечного роутера или малинки и реле на кнопку power, советую для твоего удобства сделать отдельное реле для reset) либо покупной (есть готовые розетки с wifi/ethernet или gprs).

    В биосе машины настраиваешь включение машины при появлении питания. Если машина повисла, делаешь долгое выключение (минута +-).
    Придется покурить настройки загрузчика, так как после неправильного выключения что windows что linux предлагают пользовательское действие с клавиатуры.

    На это тоже есть аппаратные решения - ip kvm. Формально, в 99.9% случаев после сбоя достаточно нажать enter и загрузка продолжится, это так же можно автоматизировать через тупое реле и плату от любой сломанной клавиатуры (обычно клавиатура ломается механически но плата живет почти вечно), там нужные контакты определить легко по прозрачной пленке под кнопками.

    Если будешь использовать роутер или ту же ip камеру, а не малинку (ее то как раз без проблем настроить на управление магнитным реле, а на их основе соберет что угодно почти любой даже не знакомый с электроникой пользователь), то ищи те модели, для которых есть открытые прошивки, причем не на словах а чтобы был у кого то опыт в этом чтобы статью почитать и повторить. На всех роутерах можно найти внешние разъемы (они могут быть тупо под корпусом) либо использовать уже имеющиеся внешние устройства, какие-нибудь управляемые подсветка
    Ответ написан
  • Как создать удаленный виртуальный дисплей большого разрешения и работать через RustDesk?

    @rPman
    Использовать xvfb (X virtual frame buffer). Устанавливаешь одноименный пакет, настраиваешь его запуск, используешь. Таких серверов может быть запущено несколько, но rustdesk может этого не ожидать (я сильно не копал но обычно если запустить rustdesk приложение с установленным DESKTOP на нужную тебе сессию, для нее он и запустится)

    p.s. linux + xvfb + rustdesk это худший способ настройки удаленного подключения
    Рекомендую x2go, сервер все сам настроит, а клиенты есть по до все. Работает на порядок эффективнее (плавнее и менее требовательный к сетевому каналу).
    Для игр не подходит.
    Ответ написан
    Комментировать
  • Что использовать взамен TeamViewer напрямую без доступа в интернет?

    @rPman
    Rustdesk

    Учти, с твоим процессором, vnc-основанные системы удаленного доступа должны тормозить, у них принцип работы таков, что они сканируют весь экран, сжимают его и транслируют

    Steam remote/Rustdesk и некоторые проприетарные реализации vnc работают хитрее, через драйвер в системе и оптимизируют, но работают нормально только при наличии шустрой gpu

    Так что лучше пользуйся rdp
    Ответ написан
    Комментировать
  • Как работать на компе, который находится в 10 метрах (комп 1 монитор-клава-мышь)?

    @rPman
    До 10 метров не нужен второй компьютер, при использовании windows можно использовать софт ibik aster (в linux xserver multiseat из каропки), который из одного физического компьютера с несколькими мониторами, клавиатурами и мышками делает несколько (до десятка) рабочих мест, без недостатков удаленного управления, т.е. это полноценные рабочие места с рабочими (не серверными) ревизиями windows. 10 метров от компьютера можно сделать штатными кабелями hdmi/usb, а при денежных вложениях легко расширяется до 30м, можно и 100 но это неоправданно дорого.

    Для организации 4-6 рабочих мест по деньгам непревзойдённая экономия. Майкрософт с этим борется, с попеременным успехом, пока все работает.

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

    Схема работает прекрасно как с рабочими программами так и с играми.
    Ответ написан
    Комментировать
  • Как заставить браузер на удаленном сервере вести себя 'как обычно' при отключенной сессии?

    @rPman
    Отключаяя сессию rdp для машины это сигнал блокировки экрана, браузер это отлавливает и тормозит обработку скриптов (точно так же как и при минимизации окна/смены таба)

    Полагаю headless версии браузера тебе не подходят? те что selenium к примеру запускают?

    Решения:
    - универсально, рекомендую - рекурсивный rdp, сессия, где запущен браузер должна быть открыта в другой сессии (другой пользователь, и не обязательно с этой же машины, но нет смысла заводить вторую машину), вот уже к этой второй сессии можно подключаться удаленно, при ее отключении открытое окно сессии mstsc к браузеру не будет передавать сигнал о дисконнекте, ее даже можно безопасно минимизировать (не проверял)
    - запускать браузер не в rdp сессии а в консоли сервера (это та что подключена к монитору), используя vnc/teamviewer/anydesk и аналоги
    к сожалению на серверах ее может не быть или она недоступна, к тому же она только одна на машине.
    - виртуализация, установи виртуальную машину, где запускай хоть десктопные версии windows (это легально только с pro/ultimate версиями), каждый браузер будет запущен в своей сессии-консоли, доступ по rpd средствами виртуальной машины
    - смени операционную систему на linux, тебе ведь только браузер запускать, там с помощью xserver-xvfb можно запускать любое количество серверов xserver, подключаться к ним по vnc (есть врапперы rdp), это будет проще и дешевле в обслуживании
    Ответ написан
    Комментировать
  • Аналоги RDP для linux-сервера без GPU?

    @rPman
    Запускаешь локально на своей машине xserver, если у тебя linux то он скорее всего уже у тебя запущен, если windows то ищи windows xserver, самый простой открытый идет в пакете cygwin, еще есть xwing

    У тебя 3 способа
    - самый простой, ничего не нужно настраивать, но не самый эффективный по сетевому трафику
    запускаешь ssh подключение с ключом -Y и в этой сессии запускаешь свои графические приложение (xterm для тестирования)
    - чуть сложнее, не грузит процессор, так же высокий сетевой трафик
    с помощью xhost настраиваешь права доступа на локальном xserver и перед запуском приложения на твоем сервере прописываешь адрес своего xserver в переменной DISPLAY
    DISPLAY=mycoolclient:0.0 xterm
    я когда то давно для теста так кваку запускал, удивительно но по локальной сети транслировалос более чем достойно и 3d-ускоритель (правда сейчас так не получится) использовался

    - самый правильный и простой, самый эффективный по трафику
    устанавливаешь на сервере и на клиенте x2go-server и соответственно x2go-client (есть windows реализация)
    работает через ssh, сам ставит xserver на windows, удобное управление сессиями, можно настраивать сессии целиком рабочий стол и т.п.
    Ответ написан
    Комментировать
  • Как запустить программу с графическим интерфейсом на Ubuntu, установленной на VPS?

    @rPman
    x2go
    на vps-ку сервер, на домашнюю машину - клиент, подключение по ssh, в мире linux да и windows это наиболее отзывчивое приложение удаленного рабочего стола, особенно со слабым сетевым каналом

    p.s. можно поставить какое-нибудь DE но не обязательно, можно указать что запускать нужно конкретное приложение (но некоторые кривонаписанные ожидают какое то DE и могут глючить)

    p.p.s. вообще то ставить ничего не требуется, если локально у тебя есть xserver (это linux или на windows установить соответствующее приложение, например от cygwin) то достаточно подключиться по ssh с ключом -Y и можно запускать приложение с использованием локального xserver. Этот подход больше потребляет сетевой трафик чем x2go но на linux машинах буквально не требует никакой настройки
    Ответ написан
    Комментировать
  • ИБП может включать и выключать ПК насильно?

    @rPman
    ричем когда отключаешь его через power он не реагирует на Wake-on-LAN, только после ручного пуска.
    поковыряйся в биосе, есть там опция - поведение компьютера с появлению питания - включаться, это не рекомендуется если нет бесперебойника но твой случай подходит.
    Ответ написан
    Комментировать
  • Локальный и удаленный пользователь одновременно?

    @rPman
    Единственное известное мне приложение (полагаю оно теперь вообще единственное), позволяющее действительно пользоваться нескольким пользователям не серверными ревизиями windows - это ibik aster (за деньги но на пару порядков дешевле серверных лицензий)

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

    p.s. для linux, такой multiseat - штатный режим работы (без проблем настраивается 1 рабочее место = одна видеокарта, это решаемо конечно но уже не из коробки, в отличии от aster где не важно сколько их на машине), у меня есть конфиг, где один пользователь сидит в linux сессии, а другой под несколько программ использует виртуалку с win на своем мониторе.
    Ответ написан
    Комментировать
  • Апп, позволяющий подключиться к другому андроиду и оказать помощь (но не Teamviewer)?

    @rPman
    anydesk (кстати тоже стал последнее время просить денег, ничего не имею против, если это вопросы бизнеса), почти полная копия teamviewer
    из опенсорс бесплатных и хорошей производительностью - rustdesk, но нужно ставить сервер (где то снаружи или с настроенными перенаправлениями портов)
    Ответ написан
  • Возможен ли удаленный доступ обычного ПК через отдельное устройство - посредник?

    @rPman
    гуглить: kvm over ip
    на хабре есть статья самоделка

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

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

    upd. самое дешевое решение я рекомендую не городить устройство посредник, а собрать liveusb образ флешки с ос, в которой настроен удаленный доступ и автоопределение параметров подключения к сети, данный образ выдается клиенту по сторонним каналам (можно даже просто uefi сборку разместить на карте памяти смартфона, подключив его к компьютеру и выбрав режим sdcard в настройках, загрузиться с него, это самый ничего не требующий способ, потому что все можно будет сделать прямо со смартфона)
    Ответ написан
    Комментировать
  • Как удаленно запустить Windows приложение из Linux?

    @rPman
    Осторожно с windows, оно внезапно по своему желанию может вместо включения, остановить запуск и показать картинку - 'купите нашу новую версию', а если будить из сна - загрузить обновление и самостоятельно перезагрузиться (хотя windows 10 вроде бы уже перестали этим маразмом маяться?).

    Скрипт, который будет с linux машины грузить необходимую команду для запуска нужно запускать как службу, это как минимум надежнее (можно планировщиком задач запустить свое приложение, но чтобы оно работало в не интерактивном режиме, и чтобы запускалось до авторизации пользователя) тогда его ничто не заблокирует
    Ответ написан
    Комментировать