В процессе очередной статьи из серии статей по фрэймворку Bettercap 2.* и атаки на WiFi сети, написал простенький код на языке Golang(GO) для выполнения команд интерпретатора удалённо. И решил не вставлять этот код в тело статьи, а вынести в отдельный топик со ссылками на созданный репозито́рий, а заодно не много расписать ход составления алгоритма для выполнения подобной задачи и сам код подробней.
Речь пойдёт о примитивном решении вопроса из серии «Как . «. Конкретный вопрос в нашем случае — «Как создать программу которая будет выполнять команды встроенного интерпретатора ОС удалённо .»
Написать программу которая будет скрыто выполнять команды встроенного интерпретатора ОС, а так же будет получать вывод интерпретатора о выполненной команде и отсылать ответ.
Простейшим решением будет создать программу в стиле «Клиент — Сервер».
«Серверная» часть будет скрыто выполнять команды и отсылать «клиентской» части программы.
Удаленный рабочий стол средствами Python
Первое что потребуется для решения задачи, это придумать алгоритм для программы, после конечно же подобрать функции которые потребуются для выполнения этой задачи и наконец собрать подобранные функции в программу.
- Установить прослушивание порта.
- Открыть порт.
- Получить сообщение подключенного клиента.
- Обработать полученное сообщение.
- Выполнить команду из полученного сообщения.
- Получить вывод интерпретатора который будет выполнять эту команду.
- Обработать полученный вывод интерпретатора.
- Отправить обработанный вывод интерпретатора подключенному клиенту.
- Подключится к серверной части программы.
- Принять команду.
- Отправить полученную команду серверной части.
- Получить ответ серверной части.
- Вывести обработанный ответ.
Программы типа «Клиент — Сервер» работают по принципу общения двух приложений между собой, при этом оба приложения могут взаимодействовать как с другими программами|приложениями и ОС или только ОС. Серверная часть работает по принципу «Принял сообщение -> обработал полученное сообщение ->если требуется выполнил действия-> отправил ответил.», клиентская часть «Подключился к серверу -> отправил сообщение -> принял и обработал полученный ответ -> вывел ответ.».
Серверная часть программы
Серверная часть программы устанавливает прослушивание на указанном порте, открывает порт и ждет сообщения с командой для выполнения клиентской части программы.Задача серверной части выполнить полученную команду, в этом случае отправить полученную команду встроенному интерпретатору ОС и получить вывод интерпретатора о выполненной команде.Для решения этой задачи в языке Golang(GO) существует пакет
Ссылка скрыта от гостей
, в котором присутствуют необходимые функции для работы с встроенными|предустановленными в ОС программами и приложения.
Удаленный доступ к компьютеру через интернет.Настройка удаленного доступа.
Ссылка скрыта от гостей
— «Команда exec.Command является объектом, который предоставляет доступ к этому внешнему процессу.»
Этот объект и будем использоваться в коде серверной части программы.Рассмотрим пример использования объекта «exec.Command» на примере с встроенным интерпретатором ОС Windows.(На момент написания статьи, работаю в ОС Windows и «удобней» описывать использование в этой «оперативной системе». Но так как Golang кроссплатформенный язык программирования, то работать будет и в других ОС, отличие будет только в командах к самому интерпретатору ОС.)
Для примера обратимся к командной строке с командой «help», которая выведет справку командной строки(
Ссылка скрыта от гостей
package main import ( «fmt» «os/exec» ) func main() < out, _ := exec.Command(«cmd», «/c «, «help»).Output() fmt.Println(string(out)) >
Источник: codeby.net
Создайте свой собственный бесплатный TeamViewer с помощью RustDesk
Когда дело доходит до удаленного подключения к компьютеру, первое приложение, к которому обращается большинство пользователей, — это TeamViewer, одно из пионеров, предлагающих эту функциональность. Однако по прошествии лет, количество альтернатив выросло , большинство из которых имеет те же функции, что и оригинал. Однако мы также можем использовать RustDesk, приложение, позволяющее удаленно подключаться к другим компьютерам.
RustDesk — это приложение, предлагающее нам практически те же функции, что и в TeamViewer, AnyDesk или Windows Удаленный рабочий стол, но главное преимущество — это бесплатное приложение с открытым исходным кодом.
Что такое RustDesk?
RustDesk представлен как одна из лучших альтернатив, доступных для Windows и Linux к известному TeamViewer. Это приложение с открытым исходным кодом, большое сообщество пользователей доступны через Reddit, Discord и GitHub, которые шифруют сквозные соединения.
Это позволяет пользователям создать свой сервер для установления соединений или использования одного из общедоступных серверов, которые приложение предоставляет нам. Если мы хотим создать свой собственный сервер, если мы не доверяем безопасности, предлагаемой Ржавчина стол, мы должны загрузить дополнительное приложение.
Помимо того, что он доступен для Windows и Linux, он также работает на macOS и iOS/iPadOS и Android мобильные устройства.
Какие функции он предлагает?
RustDesk — интересная альтернатива TeamViewer, поскольку она предлагает нам практически те же функции, что и старое приложение для удаленного доступа.
Удаленный доступ к рабочему столу
С RustDesk мы можем удаленный доступ пользовательский интерфейс, как если бы мы были физически перед ним, но с учетом того, что, в зависимости от скорости соединения, действия могут занять больше или меньше времени, чтобы отразиться на нашем экране, а не на удаленном компьютере.
Пользовательский контроль
В то время как TeamViewer предлагает только один тип доступа, по крайней мере, в бесплатной версии, с RustDesk мы можем создать разные типы пользователей , каждый из которых имеет разные типы доступа к команде, к которой они подключены. Таким образом ограничивается взаимодействие самых неопытных пользователей или пользователей с ограниченным доступом.
Делиться файлами
Совместное использование файлов между двумя командами — одна из функций, которые приложение RustDesk также предоставляет нам. Эта функция, которая также доступна в TeamViewer, позволяет нам передавать большие файлы не прибегая к таким платформам, как WeTransfer и им подобным, платформам хранения, FTP-серверам
Многоплатформенная
Один из самых интересных моментов этого приложения, не говоря уже об интересных функциях, которые оно нам предлагает, заключается в его мультиплатформенной поддержке. RustDesk доступен для Windows в 32-битной и 64-битной версиях, для Linux, macOS, iOS/iPadOS и Android .
Кроме того, также доступна портативная версия, версия, совместимая с Windows только на компьютерах с 64-разрядными версиями.
Сквозное шифрование
Как и любая платформа для обмена сообщениями, которая обеспечивает сквозное шифрование сообщений, RustDesk также шифрует соединения между компьютерами которые делают связь. Таким образом, друзья инопланетянина не смогут расшифровать все данные, которые циркулируют между обоими компьютерами.
большое сообщество
Чтобы приложение с открытым исходным кодом было успешным, сообщество должно его поддерживать. В случае с RustDesk мы можем найти очень большое сообщество пользователей, сообщество, которое мы можем найти через Discord , Отредактировать и GitHub.
Как это работает
Из-за ограничений Windows на некоторых компьютерах через контроль учетных записей (UAC) переносная версия предлагает нам установить приложение для Windows вместо использования этой версии. Если у вас не возникнет проблем с производительностью, мы можем без проблем использовать эту версию.
В процессе установки нет никакой тайны. Нам просто нужно указать путь, куда мы хотим установить приложение, поставить соответствующие галочки, если мы хотим создать прямой доступ и доступ к приложению с рабочего стола и нажать на кнопку Принять и установить кнопку.
Вы закончили работу с приложением, оно откроется автоматически и покажет нам интерфейс, разделенный на три раздела:
Ваш рабочий стол
Идентифицировано с нашего компьютера через общедоступные серверы RustDesk вместе с соответствующим паролем, паролем, который мы можем автоматически изменить на новый или установить тот, который мы хотим использовать, щелкнув значок карандаша.
Удаленное управление рабочим столом
Удаленное подключение к компьютеру . Этот раздел расположен в правой части окна приложения. Чтобы удаленно подключиться к компьютеру с помощью общедоступных серверов RustDesk, мы должны ввести идентификатор целевого компьютера и нажать «Подключиться». Далее приложение запросит пароль доступа компьютера, к которому мы собираемся подключиться.
Если мы хотим передавать файлы вместо использования удаленного подключения к рабочему столу другого компьютера, вместо нажатия кнопки «Подключиться», мы нажимаем кнопку «Передать файл». Затем он запросит у нас пароль компьютера, с которого мы хотим передавать файлы, и откроет панель, аналогичную панели FTP-приложений, откуда мы можем передавать файлы между двумя компьютерами.
консоль журнала
Через этот раздел мы можем получить доступ ко всем соединениям, которые мы установили с другими компьютерами. Кроме того, это также позволяет нам создавать адресную книгу других компьютеров и устанавливать ряд избранных соединений. Если количество оборудования, которое мы храним, очень велико, мы можем использовать окно поиска по ID.
Скачай бесплатно
- Windows 10 и Windows 11 в 64-битной версии
- Windows 7,8.X и Windows 10 в 32-разрядной версии
- Портативная версия для Windows
- MacOS
- ОС iOS/iPad
- Android
В этот GitHub ссылка, вы можете найти последние доступные версии RustDesk для всех операционных систем, в которых он доступен.
На момент публикации этой статьи приложение для создания собственных серверов RustDesk для Windows и Linux в настоящее время доступно только в 64-битных версиях, версии, которые вы можете скачать по этой ссылке. ссылке .
альтернативы
- Windows Remote Desktop — идеальное решение для пользователей, которые хотят подключаться только к компьютерам под управлением Windows, если на удаленном компьютере установлена Pro-версия Windows.
- TeamViewer , старейшее кроссплатформенное командное приложение для удаленного подключения в мире вычислительной техники, доступное бесплатно на его веб-сайте. веб-сайт Честного ЗНАКа для некоммерческого использования.
- AnyDesk — еще одна интересная альтернатива RustDesk, которая, как и TeamViewer, предлагает нам бесплатную версию для некоммерческого использования. с веб-сайта .
Источник: itigic.com
Создание и настройка удалённого рабочего стола
В ОС Windows существует полезная возможность получить доступ к управлению другим компьютером через локальную сеть или интернет. Например, находясь дома, вы можете не только зайти на рабочий компьютер, но и, например, распечатать документ на служебном принтере. Для того чтобы это стало возможным, нужно создать и настроить удалённый рабочий стол на машине, к которой вы хотите подключиться.
Для этого обоим устройствам нужно находиться в одной локальной сети или иметь подключённый интернет, причём необязательно, чтобы на них стояли одинаковые версии операционных систем. Можно настроить воспроизведение звука, запуск программ, доступ к данным на другом рабочем месте. Помните, что это снизит безопасность, поскольку теоретически компьютер станет открыт для всех пользователей сети, и преградой для злоумышленников будет только пароль. Придумайте его как можно более сложным, не используйте стандартных слов и комбинаций.
Использование стандартных средств ОС Windows
Настройку удалённого доступа на рабочий стол можно запустить, используя стандартную службу Windows. Прежде всего, защитите паролем учётную запись на месте, к которому хотите подключиться:
- Откройте окно Панели управления.
- Найдите значок «Учётные записи пользователей».
- Откройте «Изменение пароля Windows».
- Кликните «Создание пароля своей учётной записи».
- Придумайте и запишите как можно более сложный пароль.
Далее нужно разрешить подключения к нашему компьютеру:
- В меню Пуск найдите строку «Компьютер», из контекстного меню откройте «Свойства».
- Перейдите по ссылке «Настройка уделённого доступа».
- В окне вам будет предложено разрешить подключиться любым клиентам либо с проверкой подлинности. Если вы работаете на машинах, где версия ОС выше Vista, то лучше выберите второй пункт.
- Нажмите на «Выбрать пользователей».
- Введите имена компьютеров, которым разрешено подключение. Узнать имя можно в том же пункте «Компьютер» — «Свойства».
Чтобы выйти на удалённый рабочий стол:
- Нажмите Пуск, строка «Стандартные», затем «Выполнить».
- Введите mstsc.
- В открывшемся окне введите IP или имя нужного компьютера.
- Введите имя пользователя.
- Также вы можете настроить параметры размера рабочего стола, глубины цвета, воспроизведения звука, используемые локальные диски и другие.
Если после этого подключиться не удалось, то, возможно, брандмауэр блокирует доступ на рабочий стол. Зайдите в раздел брандмауэр на Панели управления, далее «Разрешить запуск программы или компонента через брандмауэр».
Далее отметьте пункт «Удалённый рабочий стол».
Возможно, если вы выходите через интернет, вам придётся в своём маршрутизаторе открыть порт 3389. Зайдите в интерфейс роутера, этот параметр обычно находится на вкладке «Дополнительные настройки».
И ещё одно условие: нужно отключить спящий режим на удалённом компьютере, поскольку в это время он будет недоступен.
ВАЖНО. На операционных системах Windows Vista Starter, Home Premium, Home Basic, Windows 7 Starter, Home Premium, Home Basic, Windows XP Home Edition возможность настроить удалённый рабочий стол недоступна. Таковы ограничения этих версий, на которые пользователи не сразу обращают внимание.
Но владельцам указанных версий не стоит расстраиваться. А также тем пользователям, которым рассмотренная инструкция показалась слишком сложной. Существует программное обеспечение, которое легко решает эту проблему.
Использования специальных приложений
Существуют простые в использовании и одновременно многофункциональные программы удалённого доступа к рабочему столу, например, TSplus (бесплатной является только демоверсия), TeamViewer (бесплатна при домашнем использовании), Chrome Remote Desktop (бесплатная).
Вероятно, наиболее удобной из них является TeamViewer, обладает следующими характеристиками:
- Поддержка разных операционных систем, в том числе платформ Android и iOS.
- Совместимость со старыми версиями ОС.
- Не нуждается в дополнительных настройках, сама определяет параметры брандмауэра и сети.
- Понятный интерфейс на русском языке.
- Быстрая передача данных.
- Высокая степень безопасности подключений.
- Работа с несколькими компьютерами.
- Автоматическое обнаружение пользователей в сети.
- Продвинутые настройки управления правами пользователей, возможности их группировки.
- Возможности чата, конференций, обмена файлами, хранения их в облаке.
- Удалённое воспроизведение видео и аудио в высоком качестве.
- Возможность использовать непосредственно из браузера.
- Доступ через локальную и интернет-сеть.
- Печать на локальном принтере документов с другого компьютера.
- Синхронизация буфера обмена.
- Возможность затемнить экран удалённого устройства.
Чтобы настроить удалённый доступ к рабочему столу через TeamViewer, выполните следующее:
- Скачайте и установите приложение на удалённый компьютер.
- При установке поставьте параметр «Полный доступ».
- После установки запустится настройка для последующих подключений, нужно будет придумать имя и пароль.
- Создайте учётную запись.
- Для того чтобы к рабочему столу был постоянный доступ, не выходите из программы, пусть она будет в фоновом режиме.
- На компьютере-клиенте, также установите программу либо используйте браузер, зайдя на официальный сайт.
- Для подключения введите имя логин и пароль.
Таким образом, создать и настроить удалённый рабочий стол в некоторых версиях Windows можно при помощи стандартной службы. В случае, когда это невозможно, скачайте одно из специальных приложений. Это позволит пользоваться этой функцией даже с мобильных устройств, плюс не требует специальных знаний, и нет необходимости разбираться в настройках.
Источник: nastroyvse.ru