Как обезопасить общедоступный сервер удаленных рабочих столов?


16

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

Я знаю, что достаточно легко открыть брандмауэр и перенести порт.

Тем не менее, как мне обезопасить саму машину и каковы лучшие практики в этом отношении? Меня беспокоит возможность хакеров взломать его.

Любые рекомендации / рекомендации по передовой практике будут высоко оценены.


Редактировать:

Вопрос о продукте, который я нашел:

Фильтруйте входящие RDP-соединения по IP, MAC-адресу, имени компьютера и т. Д.

Кто-нибудь может прокомментировать безопасность этого? Похоже, я мог бы также использовать его для ограничения доступа по имени машины / Mac? Кто-нибудь еще использовал это?


1
Я думаю, что вы спрашиваете не только о том, как обезопасить эту машину и любое RDP-соединение с ней, но также и о том, как снизить риск для остальной части вашей сети в случае ее взлома. Это правильно?
dunxd

Да, верно, из-за того, что мы малы, существует только один RDP-сервер, и он требует полного доступа к рабочему столу / сетевых ресурсов для внутренних пользователей.
me2011

Ответы:


14

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

Недавно мы начали использовать RD Gateway Manager со службами удаленных рабочих столов, роль в Windows 2008. Мы настроили его для прохождения через наш сервер TMG и непосредственно на компьютер пользователя. Он использует NLA, как указано выше. Пользователь, подключающийся, должен быть членом правильной группы AD и членом правильной локальной группы, чтобы иметь доступ. В зависимости от того, как вы хотите его настроить, вы можете подключиться через веб-страницу, которая в основном открывает mstsc и вводит настройки прокси-сервера для шлюза удаленных рабочих столов, или вы можете установить настройки на своем компьютере вручную, чтобы каждый раз, когда вы открываете его, он пытался перейти через этот прокси. До сих пор это работало довольно хорошо и, кажется, безопасно.


3
+1 за это. Я также с большим успехом использую RD Gateway, и вам нужно только открыть порт 443 для Интернета, чтобы он работал. RD Gateway не был подвержен этой ошибке MS12-020 от нескольких недель назад, которая угрожала RDP.
Райан Райс

+1 также есть БОЛЬШЕ меньше ботов, атакующих шлюзы RD, чем прямых RDP.
Грант

8

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

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

6

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

Если вы этого еще не сделали, убедитесь, что политики блокировки учетной записи установлены достаточно строго. RDP даже с NLA и шлюзом дает людям что-то, чтобы попытаться перебор паролей. Сильная политика локаутов сильно затрудняет попытки грубой силы преуспеть.

Установите действительные сертификаты SSL в системах, чтобы клиент уведомлял конечных пользователей, если кто-то пытается выполнить какую-либо атаку MITM.


3

Это не очень безопасно, однако есть несколько способов укрепить безопасность.

Запретить доступ в Интернет с этого сервера. Многие из более серьезных вредоносных программ пытаются связаться со своим сервером управления и контроля, когда это ставит под угрозу вашу систему. Конфигурирование правила доступа брандмауэра для запрета исходящего доступа по умолчанию и правила разрешения исходящего доступа только во внутренние / известные сети и подсети RFC 1928 могут снизить риск.

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

Настройте сеть периметра, поместите сервер удаленного рабочего стола в периметр и используйте недорогой VPN для предоставления доступа. Примером будет Хамачи. Обратите внимание, что запрещение доступа в Интернет из сети периметра также является хорошей практикой.

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


1

Я бы предложил следующие меры:

  1. Изменить порт, используемый для подключения к удаленному рабочему столу
  2. Не используйте общие имена пользователей, но более сложную политику именования
  3. Высокие требования к паролям
  4. Закройте любой другой неиспользуемый порт извне (входящий)

Необязательный

  1. Используйте VPN (CISCO, Open VPN и т. Д.), Затем подключитесь к серверу, используя внутренний IP.
  2. Используйте смарт-карту, если возможно

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

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

Да, я имею в виду, что это не самая большая сделка в мире, и любой, кто знает regedit, вероятно, достаточно умен, чтобы быть осторожным ... но вы не можете этого знать. :)
JohnThePro

1

Вы можете запустить WinSSHD на порту 22, а затем использовать клиент Tunnelier, чтобы создать для вас туннель, и автоматически открыть сеанс служб терминалов через туннель одним нажатием. Это также дает вам очень хороший безопасный вариант FTP, а также для передачи файлов.


1

Я использую переадресацию портов ssh для этих целей и разрешаю только аутентификацию на уровне пользователя на основе открытого ключа. Все личные ключи пользователей также должны быть зашифрованы. В Windows Putty делает это хорошо, и Pageant позволяет пользователям легко загружать свои ключи. Если вы не используете какие-либо серверы Linux / BSD с ssh по умолчанию, вы можете использовать OpenSSH в Cygwin для этого.

Я рекомендую выделенный удаленный сервер оболочки с локальным брандмауэром, который блокирует то, на что вы не хотите, чтобы люди подключались, поскольку переадресация портов в SSH в основном открывает любой внутренний сервер / порт для пользователей, которых вы хотите.


1

Bitvise SSH - это хороший бесплатный SSH для Windows.

Я бы выбрал дешевое SSL VPN-завершение от клиента к периметру интернет-шлюза для чего-то большего, чем случайное использование (например, Commercial In-Confidence).

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


0

не совсем лучшая практика, но некоторые случайные мысли:

  • обновляйте свою систему - разрешайте автоматические обновления, не используйте продукты, срок службы которых истек,
  • использовать длинные / сложные пароли для всех системных учетных записей
  • меня будут ругать за то, что я предлагаю «безопасность через мрак», но это не принесет вам никакого вреда, если вы
    • измените порт по умолчанию 3389 / tcp на что-то другое, например 26438 / tcp
    • добавьте порт-стук [если возможно] на уровне брандмауэра, чтобы потенциальный пользователь rdp сначала посетил какую-то веб-страницу и только затем мог зайти на ваш сервер.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.