Малый бизнес (слишком маленький, чтобы оправдать использование шлюза служб терминалов) хочет, чтобы определенные пользователи имели доступ к своим рабочим столам с Windows 10 из дома.
Мне повезло с удаленным рабочим столом Windows для этой цели, однако передовая практика предлагает не открывать порт RDP напрямую. это рекомендуется для защиты RDP через VPN, однако в прошлом я обычно настраивал для этой цели SSH-туннель, поскольку я был более знаком с этим.
Я предполагаю, что у клиента есть компьютер, на котором может работать SSH-сервер, и буду называть его SSH_SERVER
. В моем случае обычно есть компьютер Linux или BSD уже локально, либо в качестве файлового сервера, либо в качестве брандмауэра (например, FreeNAS, pfSense), в противном случае я обычно захожу на восстановленный ПК специально для выполнения этой работы.
В этом разделе я подробно описываю, как настроить переадресацию портов SSH для клиента, которому требуется доступ к удаленному рабочему столу Windows.
SSH_SERVER
и откройте брандмауэр, чтобы открыть это на каком-то нестандартном порту, <EXT_SSH_PORT>
. Примечание: это только внешний порт, который я когда-либо открывал, все связь с сетью осуществляется через переадресацию портов по SSH.SSH_SERVER
с оболочкой, установленной на /bin/false
./etc/sshd_conf
файл:Match User <USERNAME>
AllowAgentForwarding no
PermitOpen <USER'S_WINDOWS_DESKTOP_IP>:3389
ForceCommand echo 'This account is restricted.'
(более подробное обсуждение Вот).
~/.ssh/authorized_keys
файл и (б) безопасно передать закрытый ключ на устройство пользователя.ssh -L 10000:<USER'S_WINDOWS_DESKTOP_IP>:3389 <OFFICE_EXTERNAL_IP> -p <EXT_SSH_PORT>
или с помощью вспомогательного программного обеспечения (например, для Mac OS, для Windows).localhost:10000
.Этот метод работал достаточно хорошо, но я всегда чувствовал, что он недостаточно «профессиональный», и что когда-нибудь мне придется преобразовать эти туннели SSH в VPN.
Я исследовал это с помощью L2TP / IPSEC (на UniFi Dream Machine, хотя я думаю, что ограничения здесь не относятся к маршрутизатору) и сразу же столкнулся с некоторыми ограничениями:
~/.ssh/authorized_keys
, а все другие устройства, которыми владеет клиент (например, персональный рабочий стол), будут продолжать работать без дополнительной настройки.Кажется, что единственный случай, когда предпочтительнее использовать VPN, - это когда вы хотите все общение происходит через офисную сеть, и у вас есть некоторый уровень осведомленности / контроля над удаленной сетью. (VPN между сайтами подпадают под эту категорию.)
Я что-то упустил? Предлагают ли VPN большую производительность и / или безопасность, чем перенаправление портов SSH?
Предлагаемое вами решение SSH кажется мне слишком сложным для рассматриваемой проблемы.
Два предложения:
Используйте VPN вместе с решением 2FA / MFA, таким как Duo.
Если VPN вызывает проблемы, используйте другое решение для удаленного доступа, например Teamviewer, AnyDesk и т. Д., В сочетании с поставщиком 2FA / MFA, например Duo.
Вы можете создать бесплатную учетную запись Duo для использования с 10 пользователями.