Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
CheckBootSpeed - это диагностический пакет на основе скриптов PowerShell, создающий отчет о скорости загрузки Windows 7 ...
Вы когда-нибудь хотели создать установочный диск Windows, который бы автоматически установил систему, не задавая вопросо...
Если после установки Windows XP у вас перестала загружаться Windows Vista или Windows 7, вам необходимо восстановить заг...
Программа подготовки документов и ведения учетных и отчетных данных по командировкам. Используются формы, утвержденные п...
Red Button – это мощная утилита для оптимизации и очистки всех актуальных клиентских версий операционной системы Windows...

Auto-Triggered или «незаметный» VPN

Текущий рейтинг: 0 (проголосовало 0)
 Посетителей: 868 | Просмотров: 1035 (сегодня 0)  Шрифт: - +
Периодически мне необходимо подключаться через VPN к моей домашней сети. Чаще всего для проведения демонстраций во время выступлений или проведения тренингов. Реже, чтобы достать определенные файлы или «посмотреть», что там с дочкиным планшетом. Подключаюсь либо с рабочего компьютера, либо со своего планшета. И там, и там Windows 8.1, а в этой версии появилась очень интересная возможность – автоматически срабатывающий (Auto-Triggered) VPN.

Все настройки покажу на примере планшета Surface с Windows 8.1 RT, хотя ровно также они выглядят в других редакциях 8.1. Пару слов о конфигурации домашней сети – Интернет-канал от «Ростелекома», есть внешний фиксированный IP, из ростелекомовской коробки кабель идет в роутер Linksys, который пробрасывает трафик, пришедший на внешний IP, на машину с Windows Server 2012 R2, служба Routing and Remote Access которого выступает в качестве VPN-сервера.

В домашней сетке поднят домен AD с именем “mva.com”. Использую его, например, для демонстрации туннеля с Windows Azure (проблематично сделать это в корпоративной сети в силу политик и пр.) и других бесчеловечных экспериментов. Домен “mva.com” снаружи мною не зарегистрирован и резольвится только в домашней сетке. Оставляю за кадром настройку VPN-сервера, здесь ничего необычного нет и, строго говоря, в этой роли совсем необязательно использовать Windows Server.

Перейду к настройке клиента. Первый шаг – создание VPN-подключения. Начиная с 8.1, это можно сделать в новом интерфейсе Windows, что особенно актуально для планшетов. К слову, прежний способ в традиционном интерфейсе никуда не пропал. Переходим в Change PC Settings -> Network -> Connections, нажимаем “Add a VPN connection”.

*
Увеличить


Выбираем поставщика VPN. В моем случае это Microsoft, но также в списке вы найдете встроенные клиенты от Check Point, F5, Juniper и SonicWALL. Заполняем необходимые поля.

*
Увеличить


Созданное подключение “Home” готово к использованию.

*
Увеличить


Единственное, что сделаю дополнительно, через PowerShell включу для этого подключения split tunneling.

Set-VpnConnection -Name "Home" -SplitTunneling $true


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

*
Увеличить


Но если попытаться обратиться к контроллеру по имени, то получим ошибку, поскольку для разрешения имени используется DNS-сервер Интернет-провайдера, который, естественно, ничего не знает о моем домашнем домене.

*
Увеличить


Хотелось бы получить следующее: первое, сделать так, чтобы при обращении по имени к ресурсам домена “mva.com” автоматически поднималось VPN-подключение “Home”; второе, для разрешения имен “mva.com” при этом использовался бы DNS-сервер контроллера домена домашней сетки.

Реализуется желаемое одним командлетом:

Add-VpnConnectionTriggerDnsConfiguration -Name "Home" -DnsSuffix "mva.com" -DnsIPAddress 10.40.1.200


Этот командлет, собственно, и настраивает триггер, то есть автоматическое срабатывание VPN-подключения с именем “Home” при обращении к именам с суффиксом “mva.com”. Разрешение имен для “mva.com” будет производиться с помощью машины с адресом 10.40.1.200, которая и является контроллером домена моей домашней сети.

*
Увеличить


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

*
Увеличить


В качестве проверки попробуем подключиться по имени к тестовому веб-сайту в домашней сети. Сайт откликается, VPN был автоматически поднят.

*
Увеличить


Что еще пожелать? Автоматическое подключение VPN при запуске определенного приложения. Конкретно для моего сценария это не особо нужно. Но уверен, во многих случаях подобная возможность может быть крайне востребована, особенно когда речь идет о клиентской части некоторого бизнес-приложения, серверная компонента которого расположена во внутренней сети компании.

Настроить триггер можно как для стандартных десктоп-приложений, так и для приложений нового интерфейса. В последнем случае необходимо узнать PackageFamilyName нужного приложения. Для этого можно запустить командлет Get-AppxPackage. Вы получите список всех приложений WinRT (тех самых приложений с новым интерфейсом из Windows Store) для данного пользователя. В списке нужно найти интересующее вас приложение. Для примера на моем планшете я поэкспериментирую с Fiction Book Reader Lite. Ниже информация именно по этому приложению:

*
Увеличить


Копируем строчку, содержащую PackageFamilyName, и создаем триггер:

Add-VpnConnectionTriggerApplication -Name "Home" -ApplicationID 4737VitaliyLeschenkoCo.FictionBookReaderLite_rt4gm7pfmw0sj


Тестируем. Запускаем приложение

*
Увеличить


и пытаемся открыть папку с контроллера домена:

*
Увеличить


Тот факт, что ресурсы доступны, видно в самом приложении. И конечно можно проверить, что VPN-подключение установлено.

*
Увеличить


Для традиционных десктопных приложений в качестве ApplicationID достаточно указать полный путь к исполняемому файлу:

Add-VpnConnectionTriggerApplication -Name "Home" –ApplicationID “C:\Windows\System32\notepad.exe”


Командлет Get-VpnConnectionTrigger покажет всю информацию о триггерах для заданного подключения.

*
Увеличить


В частности, в отклике командлета для подключения “Home” можно увидеть, что триггер задан для приложения с соответствующим ID и домена “mva.com”.

В завершение несколько важных замечаний.

Auto-Triggered VPN работает только для подключений, для которых включен split tunneling.

Если при подключении к сети компьютер вместе с настройками IP получает от DHCP-сервера суффикс сети “mva.com”, триггер не будет срабатывать, так как ОС считает, что находится в нужной локальной сети и нет необходимости поднимать VPN.

Автоматически установленное для доменного имени VPN-подключение также автоматически разрывается, если в течение заданного интервала времени, по умолчанию 5 мин., через подключение не передается трафик. Интервал настраивается с помощью параметра -IdleDisconnectSeconds при создании подключения или в любой момент после создания с помощью командлета Set-VpnConnection. Однако надо иметь в виду, что этот интервал игнорируется до тех пор, пока запущено приложение, для которого задан триггер, даже если при этом трафик через VPN не передается.

Если вы вручную разорвали автоматические установленное соединение, то признак Auto-Triggered с подключения снимается, и далее автоматическая установка соединения не работает до тех пор, пока вы также вручную не установите заново упомянутый выше чекбокс “Let apps automatically use this VPN connection” в свойствах VPN-профиля.

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

Мне кажется, технология довольно полезная, особенно для машин, не включенных в домен или которые невозможно включить в домен. Настройку через PowerShell, конечно, не назовешь user friendly, но пользователей можно освободить от этих хлопот, подготовив и распространив нужные VPN-профили с помощью System Center 2012 R2 Configuration Manager или Windows Intune.

Дополнительную информацию можно найти в подробном посте Windows Networking Team здесь (на англ.).

Надеюсь, материал был полезен.
Автор: Александр Шаповал  •  Иcточник: Habrahabr.ru  •  Опубликована: 22.05.2014
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER
Теги:   Auto-Triggered.


Оценить статью:
Вверх
Комментарии посетителей
Комментарии отключены. С вопросами по статьям обращайтесь в форум.