Как автоматизировать подключение к VPN?

Как можно упростить для пользователя подключение по RDP ?

Кратко: на сайте пользователь оставляет заявку ему присылают доступ к windows компьютеру для возможности "потыкаться" в специализированном ПО.

Хотели отправлять пользователю *.rdp файлик со всеми настройками и паролем, который он должен будет ввести. Но для безопастности всего этого компьютеры поставили за VPN.

Настроить VPN не для всех очевидная и простая задача.

Есть возможность создать скрипт(bat, powershell ), который запустит пользователь и у него:
  1. пропишется VPN соединение
  2. сохранися в системе
  3. подключит VPN что бы трафик шел через него
  4. запустит .rdp фаил для подключения
  5. далее при RDP подключении уже будет запрошен пароль


  • Интересуют больше всего первые три пункта это возможно?
  • Для win8 и win10 разные будут скрипты?
  • Скрипт может учитывать, что такое VPN уже создан и переходить к пункту три сразу?
  • Какие могут быть еще подводные камни?



P.S.
в вопросе не стал писать, что пароли будут меняться переодически, поэтому про безопасность передачи паролей в скриптах просьба не писать, это к вопросу не относится.
  • Вопрос задан
  • 9801 просмотр
Пригласить эксперта
Ответы на вопрос 5
@res2001
Developer, ex-admin
Видимо используете микрософтовские стандартные варианты ВПН?
У микрософта есть такая штука CMAK помогает созадавать установщики ВПН соединения.
Так же создать ВПН соединение можно с помощью powershell скрипта используя апплет Add-VpnConnection.
Тут и тут пишут, что можно и просто в cmd (т.е. батником) создавать соединения.
Подключить ВПН соединение с помощью rasdial, запустить RDP - mstsc.

Если использовать openvpn, то можно уйти от паролей и сделать ВПН на ключах. Распространять уже преднастроенную сборку openvpn. Клиентские ключи можно регулярно банить и генерить новые. Новые выкладывать на сайте.
Логин/пароль на винду лучше не прописывать в скрипте а публиковать на сайте и так же регулярно менять - пусть пользователь вводит их ручками. На всякий случай - сохранить логин/пароль для RDP соединения можно с помощью утилиты cmdkey.
Ответ написан
CityCat4
@CityCat4 Куратор тега VPN
//COPY01 EXEC PGM=IEBGENER
Наверное, через VBS/PS можно решить - через VBS вообще много чего можно сделать, в том числе весьма неординарного. Но мне неизвестно - это долгое рытье MSDN.
Вынести комп из-за VPN. И отключить его от сети конторы (физически или на уровне vlan - главное, чтобы не на компе).
Повесить RDP на нестандартный порт - его конечно все равно найдут, но школоту отсечет.
Не ставить на него ничего, кроме того софта, который демонстрируете и после каждого юзера накатывать бэкап (а еще лучше завести виртуалку и ее после логоффа автоматом из снапшота подымать, убивая старую)
Ответ написан
Сам интересуюсь этим вопросом - попробуйте такую штуку, как ниже (работает только на Вин10, там версия PowerShell должна быть выше чем на 7)

$VpnName = "Тест проверка TEST"
$gateway = "8.8.8.8"
$psk = "123456"
$regp = 'HKLM:\SYSTEM\CurrentControlSet\Services\PolicyAgent' #if VPN server is behind NAT, otherwise comment out this line.

#add l2tp vpn
Add-VpnConnection -Name $VpnName -ServerAddress $gateway -TunnelType L2tp -AuthenticationMethod MSChapv2 -EncryptionLevel Optional -L2tpPsk $psk -Force -AllUserConnection -RememberCredential -SplitTunneling
New-ItemProperty -Path $regp -Name AssumeUDPEncapsulationContextOnSendRule -Value 2 -PropertyType 'DWORD' -Force


Создаем файл *.ps1 и запускаем в PowerrShell
Ответ написан
@sanglyb
Если доступ нужен только к rdp - не проще ли, и не лучше ли воспользоваться remote desktop gateway?
Ответ написан
@adonya
rasdial [Имя_VPN_подключения] [имя_пользователя] [пароль]
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы