Настройка безопасного rdp доступа к рабочей машине?

Добрый день товарищи! Хочу реализовать возможность безопасного подключения к рабочей машине. Суть такова — имеется машина на win7, хочу сделать проверку при подключении по rdp более надежную, нежели просто логин/пароль.


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


В идеале использовать только стандартные средства ms windows, без установки vpn клиентов, драйверов, токенов, смарткарт или подобного. Разворачивать в сети win server, с центром сертификации, для подключения к 1 машине думаю лишне, да и лицензию покупать надо.


Что посоветуете?


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


P.P.S в мир электронных сертификатов, шифрования и подобной паранойи попал впервые, поэтому от огромного количества решений по госту, iso и других технологий просто голова идет кругом.


P.P.P.S эти розовые фантазии навеяны необходимость часто подключаться с разных пк в наших филиалах. Каждый раз ставить ПО, для того чтобы подключиться к своей машине больно накладно, а подключаться придется часто.
  • Вопрос задан
  • 48192 просмотра
Пригласить эксперта
Ответы на вопрос 13
script88
@script88
а не лучше сделать через teamviewer?! чем изобретать велосипед
Ответ написан
@altman
системный администратор
К сожалению, Windows Server не умеет проверять подлинность клиента по сертфикату. Все те инструкции в интернете, как использовать сертификат - они для того, чтобы КЛИЕНТ проверил подлинность СЕРВЕРА, чтобы не подключиться к "поддельному" серверу.

Еще раз другими словами: сервер подлинность клиента проверяет только по паролю. Чтобы клиент, проверил подлинность сервера - можно использовать сертификат.
Ответ написан
Комментировать
@ZoraX
Можно сделать круче и намного безопаснее без всяких сертификатов прикрученных к винде и прочее:
1. Поднимаем свой openacess vpn сервер на любом облачном VDS сервере, или другом ресурсе. Кстати можно поднять vpn на этом же сервере к которому планируется доступ через RDP (главное чтобы ip адрес был внешний и к нему был доступ из большого интернета)
2. Запоминаем ip адрес этого сервера, в случае с all in one решением, запоминаем внутренний локальный адрес, который каждый раз будет выдаваться нам при подключении к vpn
3. На роутере делаем проброс портов для RDP, в качестве локального порта указываем 3389, в качестве порта торчащего наружу, любой кроме дефолтного. Протолол - TCP IP либо both , адресом источника указываем ip адрес того openvpn сервера. (пункт2)
4. Таким образом, достучаться к Вашему удаленному рабочему столу можно будет только подключившись через vpn, остальные соединения с любых других адресов будут отбрасываться.
Ответ написан
@IgorK11
Еще подскажите простой способ логирования рдп соединений, кто когда заходил с какого ip.

Integra Login Analytics RDP
Ответ написан
Комментировать
oia
@oia
а не проще сменить порт подключения с 3389 на любой другой?
Ответ написан
@iLexx_13
Эта win7 стоит за каким-нибудь роутером или там есть полноценный шлюз на лине?
Просто в свое время хотел сделать так:
Шлюз на лине, в нем настраивается port-knocking.
Далее создается самораспаковывающийся архив, в котором лежит port-knocking для windows, сохраненный rdp-конфиг, ярлык для помещания его на рабочий стол, и небольшой bat-файл, который и будет запускаться по ярлыку примерно так:
port-knoking 8080
start mstsc rdp.conf
port-knoking 8081
где 8080 — порт, если на него постучаться то откроется порт для rdp
8081 — порт, если на него постучаться то закроется порт для rdp.

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

Несколько запутано все это — но тогда казалось мне, что пользователям будет проще, чем объяснять как установить сертификат/поднять VPN/etc..., да и безопаснее становится, чем просто по логин/паролю.
Ответ написан
Использовать шифрованный туннель с помощью zebedee. На рабочем компе запускаете zebedee-сервис, а на клиентской машине запускаете консольный клиент zebedee с флешки с помощью батника.

Плюсы:
1. Шифруется канал между клиентской машиной и сервисом.
2. Сжимается трафик.
3. Защита от несанкционированных подключений с помощью ключей.
4. Возможность проброса нескольких портов через один туннель.
Ответ написан
foxnet
@foxnet
На сколько известно, без центра сертификаций все равно ничего толкового не получится.
Если вам нужен очень очень надежное соединение без домена, то можно использовать IPSec. Это будет требовать настройки на каждом клиенте, но при этом весь трафик будет шифроваться. В этом случае также можно использовать сертификаты, но без центра сертификации и здесь не выйдет. Без центра сертификации IPSec канал можно устанавливать соединение по предварительному ключу.
Ответ написан
kirion
@kirion
Если еще нужно корпоративное решение по аутентификации, то советую смотреть в сторону One-Time Password технологий. С ними никакой клиентской части не нужно, PKI со всеми вытекающими держать не нужно. Примеры OTP: RSA SecurID, Aladdin OTP, endeed ID.
Только не вешайте голый rdp наружу, он уязвим.
Ответ написан
kirion
@kirion
Потому что MS12-020.
Ответ написан
Комментировать
asgard88
@asgard88 Автор вопроса
Еще подскажите простой способ логирования рдп соединений, кто когда заходил с какого ip.
Ответ написан
@stepanovg
Подскажите, разве самоподписаный сертификат не спасает в ситуации открытого порта 3389?
(на примере win2008r2/2012)
Ответ написан
Комментировать
polyanin
@polyanin
Golang, PHP & Symfony developer
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы