Anydesk запрет на передачу файлов
Как сделать возможным доступ к удалённому компьютеру без необходимости подтверждения каждый раз подключения удалённым пользователем? Если нужно иметь такой доступ, например, к компьютеру неопытных пользователей из числа близких или к собственному же устройству, находясь в другом месте и используя другое устройство. Хороший выбор для этих целей – программа AnyDesk. Это кроссплатформенный продукт.
Он охватывает возможности удалённого подключения между компьютерами на базе Windows, Mac, Chrome OS, Linux и мобильными устройствами. И с помощью этой программы можно настроить неконтролируемый доступ к компьютеру. Рассмотрим, как это делается на примере версии AnyDesk для Windows.
Чтобы неконтролируемый доступ к компьютеру был возможен, необходимо установить программу AnyDesk. Она поставляется изначально в портативной версии и может быть использована для разовых удалённых сеансов без инсталляции.
Скачиваем программу на её официальном сайте:
Запускаем AnyDesk, устанавливаем.
После установки программа будет автоматически загружаться вместе с Windows и работать в фоне, таким образом, собственно, и обеспечивая неконтролируемый доступ. Вызвать её для активности можно из системного трея.
Итак, на компьютере, к которому нужно беспрепятственно удалённо подключаться, установлена программа AnyDesk.
Открываем её настройки.
Идём в раздел «Безопасность». Кликаем «Разблокировать настройки безопасности».
Подтверждаем это с правами администратора.
Далее в том же разделе «Безопасность» ставим галочку «Разрешать неконтролируемый доступ». Придумываем, вводим и подтверждаем пароль. Жмём «Применить».
На этом всё. Далее нужно записать этот пароль и идентификатор AnyDesk текущего компьютера. Он отображается в главном окошке программы.
Чтобы удалённо подключиться к компьютеру, для которого настроен неконтролируемый доступ, запускаем программу AnyDesk. Вводим идентификатор компьютера с неконтролируемым доступом.
Если была поставлена галочка автоматического входа, в таком случае пароль на данном управляющем компьютере впредь запрашиваться программой не будет. И для удалённого подключения достаточно сделать двойной клик на подключении в графе избранного или недавних сеансов.
Такой автоматический вход в дальнейшем можно сбросить. Делается это на компьютере с настроенным неконтролируемым доступом. Заходим в раздел настроек «Безопасность», разблокируем их с правами администратора. И в графе «Неконтролируемый доступ» жмём кнопку «Удалить токены авторизации».
Этот ход сбросит автоматический вход на всех удалённых компьютерах, где запоминался пароль при подключении. И пароль нужно будет вводить снова. Ну или, как вариант, можно просто поменять пароль неконтролируемого доступа.
Когда в один прекрасный день начальник поднимает вопрос: «Почему у некоторых есть удаленный доступ к раб.компьютеру, без получения дополнительных разрешений на использование?»,
возникает задача «прикрыть» лазейку.
Приложений по удаленному управлению по сети предостаточно: Сhrome remote desktop, AmmyAdmin, LiteManager, TeamViewer, Anyplace Control и др. Если у «Сhrome remote desktop» есть официальный мануал по борьбе с наличием доступа к сервису, у TeamViewer есть лицензионные ограничения по времени либо запросам из сети и пользователи «скрипя зубами» так или иначе «светятся» у админов, то любимчик многих для личного пользования — AnyDesk пока требует особого внимания, тем более если начальник сказал «Нельзя!».
Если Вы знаете что такое блокировка сетевого пакета по его содержимому и Вас она устраивает, то остальной материал не предназначен для Вас. |
Update 15.08.2020
Правильное решение по блокировке AnyDesk подсказал prymalbeets123:на данный момент их 391 адрес. Со знанием этого, остальная часть статьи становится просто беллетристикой.
Когда-то у меня была решена задача по блокировке «Anyplace Control» который попадал к нам с каким-то сомнительным ПО и решена она была блокировкий всего нескольких IP (я подстраховывал антивирус). Задача же с AnyDesk, после того как я вручную собрал больше десятка IP адресов, подзадорила уйти от рутинного ручного труда.
Также было обнаружено что в «C:\ProgramData\AnyDesk» есть ряд файлов с настройками и т.п., а в файл ad_svc.trace собираются события о подключениях и неудачах.
1. Наблюдение
1.1. Видно что «висит» несколько интересующих нас процессов, и лишь тот который связывается с адресом извне нам интересен. Порты к которым подключается перебираются, из того что я видел это: 80, 443, 6568. :) 80 и 443 нам точно блокировать нельзя.
1.2. После блокировки адреса через роутер, спокойно выбирается другой адрес.
1.3. Консоль наше ВСЁ! Определяем PID и тут мне немного подфартило, что AnyDesk был установлен сервисом, соответсвенно искомый PID единственный. | 1.4. Определяем по PID процесса IP адрес сервера сервисов. |
2. Подготовка
2.1. Все методы по выявлению искомого IP адреса уже известны осталось реализовать.
Аналогично находим сервис который установил соединение, приведу только основную строку
Результатом которой будет:
Из строки аналогично перыдущему шагу извлекаем 3й столбец, и убираем все что после ":". Как результат имеем наш искомый IP.
2.2. Блокировка IP в Windows. Если в Linux есть Blackhole и iptables, то метод блокировки IP адреса в одну строку, без использования брандмауэра, в Windows оказался непривычним,
но уж какие инструменты были…
Ключевой параметр "if 1" посылаем маршрут на Loopback (Отобразить доступные интерфейсы можно выполнив route print ). И ВАЖНО! Теперь программу требуется запускать с правами администратора, поскольку изменение маршрута требует повышения прав.
2.3. Отображение и сохранение выявленых IP адресов задача тривиальная и пояснения не требует. Если подумать, то можно обрабатывать и файл ad_svc.trace самого AnyDesk, но об этом я сразу не подумал + возможно на него стоит ограничение.
2.4. Странное неодинаковое поведение программы заключается в том, что при «taskkill» процесса службы в Windows 10 она перезапускается автоматически, в Windows 8 завершается, оставляя только процесс консоли и без переподключения, в общем нелогично и это неточно.
Удаление подключившегося к серверу процесса, позволяет «форсировать» переподключение на следующий адрес. Реализуется аналогично предыдущим командам, поэтому привожу только:
Дополнительно запускаем программу AnyDesk.
2.5. Проверять состояние AnyDesk будем 1 раз в минуту (или чаще?), и если она подключилась т.е. соединение ESTABLISHED — этот IP блокировать, и опять все заново — ждать пока подключится, блокировать и ждать.
3. Нападение
Был «набросан» код, для визуализации процесса решено "+" указывать найденный и блокированный IP, а "." — повтор проверки без успешного сосединения со стороны AnyDesk.
Программа работала на нескольких компьютерах с разными Windows ОС, с версиями AnyDesk 5 и 6. За 500 итераций собиралось около 80 адресов. За 2500 — 87 и так далее…
Со временем количество блокируемых IP дошло до 100+.
Ссылка на финальный текстовый файл (blacklist) с адресами: >>раз<< и >>два<<
Дело сделано! Пул IP адресов через скрипт добавлен в правила основного роутера и AnyDesk просто не может создать внешнее соединение.
Теоретически: раз пинг иногда проходит на неизвестный незаблокированный хост boot-01.net.anydesk.com мы можем найти эти ip и заблокировать, эту реализацию сделать обычным скриптом под ОС Linux, тут как раз устанавливать AnyDesk не нужно. Анализ показал что эти IP часто "пересекаются" с найденными из нашего списка. Возможно это как раз этот хост, к которому и подключается программа до того, как начинает «перебирать» известные IP. Вероятно я позже дополню статью 2й частью поисков хостов, хотя на данный момент сама программа внутри сети не устанавливает внешнее соединение вообще.
Надеюсь ничего противоправного Вы не увидели в вышеизложенном, а создатели AnyDesk отнесутся к моим действиям по-спортивному.
Последнее возможно с помощью программ для удалённого доступа. Одна из лучших таковых – бесплатная кроссплатформенная AnyDesk. В числе её арсенала присутствует отдельный режим удалённой передачи данных – режим, не предусматривающий управление операционной системой на удалённом компьютере, но открывающий на последнем доступ к дисковому пространству для перемещения данных между удалёнными устройствами.
Как происходит удалённая передача файлов с помощью программы AnyDesk?
AnyDesk, как и перечисленные выше способы передачи данных по Интернету, также являет собой кроссплатформенное решение. Версия программы существует для Windows, Mac, Linux, FreeBSD, Chrome OS, Android и iOS.
Сайт загрузки AnyDesk:
Программу не обязательно устанавливать на компьютер, она может работать как портативная. Запускаем её на обоих компьютерах. На том компьютере, откуда нужно передать файл, вводим идентификатор AnyDesk удалённого компьютера, т.е. того, на который нужно передать файл. Жмём кнопку «Обзор файлов». Если к удалённому компьютеру ранее осуществлялось подключение, такое подключение будет запомнено программой. И нужно просто в меню этого подключения выбрать опцию «Начать передачу файлов».
Далее на удалённом компьютере его пользователь должен разрешить удалённый доступ - в появившемся окошке нажать кнопку «Принять».
После этого на управляющем компьютере отроется менеджер файлов AnyDesk. Это примитивный двухпанельный менеджер: слева будет отображаться содержимое управляющего компьютера, справа – удалённого. Домашними каталогами на обоих панелях предустановлена папка пользовательского профиля «Документы».
С помощью кнопки «Вверх» сможем выйти в корень диска компьютеров. И оттуда уже добраться до нужного пути.
Как скопировать файл с управляющего компьютера на удалённый? Выделяем нужный файл (или несколько) и жмём либо кнопку, либо опцию в контекстном меню «Загрузить». И таким образом помещаем файл в открытый на правой панели путь удалённого компьютера.
Прогресс копирования больших файлов будем видеть в специальном столбце менеджера. Здесь будут отображаться переданный и общий вес данных, скорость передачи данных.
Адреса не нужно блокировать, это глупо т.к. они в любой момент могут поменяться, блокировать нужно хостнеймы целиком со всеми поддоменами. Anydesk блокируется запросто у меня регуляркой что-то типа
"^.*(rl.ammyy.com|www.ammyy.com|anydesk.com|итд).*\$"
И блокировать лучше с предварительными пометками в mangle с обращением на 53 порт tcp/udp - меньше нагрузка, чем проверять все пакеты по L7 прямо в filter. Что ещё важно это залочить использование любых днс кроме IP роутера. Некоторый софт умеет не смотреть в системные DNS а использовать свободные для определения IP нужного хоста.
И блокировать лучше с предварительными пометками в mangle с обращением на 53 порт tcp/udp - меньше нагрузка, чем проверять все пакеты по L7 прямо в filter.
Проще в фильтре выделить запросы на 53-ий порт в отдельную цепочку, и в ней уже проверять l7. Я так и сделал, регулярное выражение и маркировка соединений, потом пакетов на 53 порт.
И все остальные программы отрубились, а anydesk несколько секунд что-то делает и обходит ограничение.
А как лучше заблокировать сторонние днс, какими правилами?
okjaeo, вот вам пример с моего роутера:
блокировка anydesk. Висит бесконечно в состоянии "Идет соединение с сетью AnyDesk"
Блокировка сторонних DNS:
Примечание 1: dst-address-list=!allowed-dns и src-address-list=!allowed-dns это для моего частного случая когда DNS серверы находятся внутри локалки но не на роутере.
Примечание 2: L7-rules энидеском не ограничиваются. У меня заблокированы большинство популярных решений включая TW, AmmyAdmin, Supremo итд. Некоторых менее популярные из них действительно используют не только домены но и IP для соединения. В этом случае всё что вам нужно это добавить ещё одно mangle правило вида:
Примечание 3: Правила заработают как только вы очистите кеш на роутере (/ip f co rem [f]; /ip dn ca fl) и на клиентах (ipconfig /flushdns)
Читайте также: