RDP перестаёт работать после установки VPN-клиента? Виноват брандмауэр
Установщик потребительского VPN может переключить профиль брандмауэра Windows и оборвать RDP. Вернитесь через гостевой агент, затем сузьте правило до порта 3389.
Через несколько минут после завершения установки потребительского VPN-клиента портал по-прежнему сообщает, что VM работает, публичный IP не изменился, а RDP не отвечает. Обычно предполагают, что VM упала или изменилась группа безопасности сети, и оба предположения обычно неверны. Изменился профиль брандмауэра Windows, в котором находится машина, и правило RDP, которое раньше совпадало, больше не совпадает. Ремонт начинается с получения оболочки по пути, не зависящему от RDP.
VM работает; правило перестало совпадать
Правила брандмауэра Windows несут набор профилей, и правило, ограниченное частным или доменным профилем, не действует, пока машина находится в общедоступном профиле. Установщики VPN добавляют адаптеры и маршруты, и многие из них как побочный эффект ужесточают общедоступный профиль. Прослушиватель остаётся привязанным к 3389, и пакеты по-прежнему приходят, но несовпадение профиля их отбрасывает.
Состояние питания и доступность — разные факты, и работающая VM с закрытым портом снаружи выглядит точно как упавшая.
Проверьте порт, прежде чем что-либо менять. Попытка подключения к 3389, которая завершается тайм-аутом, тогда как команда гостевого агента всё ещё возвращает вывод, указывает на брандмауэр хоста. Порт, который отвечает, а RDP всё ещё не работает, означает, что неисправность находится выше сетевого уровня, и этот ремонт её не затронет. Запишите, какой из двух случаев вы видели, потому что от этого зависит остальной план.
Двое ворот закрываются независимо
Сначала работает политика платформы: группа безопасности сети видит пакет раньше гостя. Этот порядок делает идеальную запись NSG бесполезной, когда хост отбрасывает пакет, а открытое правило хоста — бесполезным, когда платформа его отклоняет. Рассматривайте их как отдельные ворота и проверяйте каждые отдельно.
Прочитайте действующие правила NSG на портале или в CLI и сравните их с собственными правилами гостя. Не предполагайте, что последнее запомненное изменение и есть вступившее в силу.
Потребительский клиент может также установить драйвер фильтрации или kill switch, который блокирует трафик ниже брандмауэра Windows. Если правила брандмауэра выглядят правильными, а порт всё равно не работает, следующий подозреваемый — этот уровень.
Используйте гостевой агент как путь назад
Две функции удалённого выполнения, Run Command и Custom Script Extension, работают внутри гостя через агент платформы. Ни одна не требует RDP, поэтому ошибка брандмауэра на них не влияет. Обе возвращают вывод скрипта, что делает их каналом диагностики и одновременно каналом ремонта.
Прочитайте активный профиль и правило RDP, прежде чем менять любое из них:
Get-NetConnectionProfile
Get-NetFirewallRule -DisplayGroup "Remote Desktop" | Select-Object Name, Enabled, Profile
Повторное включение входящих правил в этом профиле — временная мера, а не цель. Используйте её, чтобы получить сеанс, а затем как следует закройте брешь:
Set-NetFirewallProfile -Name Public -AllowInboundRules True
Этот переключатель открывает все входящие правила профиля, а не только RDP. Когда у вас есть сеанс, замените его ограниченным правилом и восстановите те настройки, которые действительно нужны. Если агент тоже недоступен, запасной вариант — последовательная консоль или пересобранный диск, и это практическая причина держать агент здоровым.
Сузьте брешь, прежде чем закрыть сеанс
Временное изменение профиля — это дверь, открытая для каждого входящего правила этого профиля. Замените его правилом, ограниченным вашим адресом источника и портом RDP, затем подтвердите, что профиль вернулся в задуманное состояние. Сделайте это, пока сеанс ещё есть, потому что следующая ошибка может оказаться необратимой удалённо. Держите под рукой второй административный путь, например Bastion или последовательную консоль, на время изменения.
Подтвердите результат со своей рабочей станции тестом порта, а изнутри гостя — списком правил:
Test-NetConnection -ComputerName 203.0.113.25 -Port 3389
Get-NetFirewallRule -DisplayName "RDP from admin" | Get-NetFirewallPortFilter
Включите журналирование брандмауэра на время теста. Одна строка об отброшенном пакете, где указаны 3389 и активный профиль, отвечает на вопрос быстрее, чем ещё одна перезагрузка.
Не дайте следующему установщику сделать это снова
Если у этого хоста нет причин запускать клиент, удалите его. Установленный клиент — постоянное приглашение следующему обновлению снова переписать профиль, и следующий человек будет отлаживать тот же сбой с портала.
Снимите снимок диска, прежде чем что-либо перепишет сетевые настройки, и держите второй административный путь готовым до того, как он понадобится.
Запишите, что изменил установщик: адаптеры, маршруты, профили брандмауэра, драйверы фильтрации и службы. Эта запись превращает следующий инцидент в известный шаблон, а не в новое расследование. Когда VM нужен туннель ровно к одной службе, поместите клиент на свою рабочую станцию или постройте связь между площадками вместо установки на сервер продукта для ноутбуков. Потребительские клиенты рассчитаны на ноутбуки, а сервер, которым вы управляете удалённо, — нет.