Войти

Показать полную графическую версию : Автозапуск cmd(под администратором) из cmd(запущенного под пользователем).


ppm85
21-07-2019, 18:31
Всем привет!
Есть такая задача:
Подключаться по созданному средствами CMAK (https://habr.com/ru/post/186674/) VPN-подключению и запускать batch-скрипт, в котором идёт проверка - если определённые маршруты отсутствуют через VPN-соединение, то их необходимо прописать.
Системы, на которых запускается скрипт -MS Windows 7, 8.1, 10. Пользователей много и каждому присваивается свой ip-адрес, который ему выдаёт VPN-сервер.

Выглядит это примерно так:

reg query HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes | find "192.168.0.15"
if %errorlevel%==1 (
netsh interface ipv4 add route 192.168.0.15/32 "VPN-WORK"
)
bat-файл с этим содержимым запускается автоматом каждый раз после успешного подключения по выше описанному VPN-подключению под учётной записью с правами обычного пользователя.

Смысл такой:
1. Пользователь инициирует подключение по VPN, созданному средствами CMAK.
2. Происходит успешное подключение к VPN-серверу.
3. Запускается вышеописанный bat-файл и производится проверка на наличие необходимого маршрута.
4. Если он есть - пользователю не нужно вводить логин/пароль локального администратора. Если нет - он его вводит один раз для прописывания постоянного маршрута и ему больше не нужно повышение прав до локального администратора каждый раз при подключении по VPN.

С последним пунктом затык - не нашёл способа повышать привилегии из уже запущенного bat-файла выше. Может, кто знает?

ppm85
28-07-2019, 07:17
Никто не сталкивался?

DJ Mogarych
29-07-2019, 09:09
ppm85, слишком костыльное какое-то решение.
Обычно маршруты на сервере прописываются, чтобы не нужно было ничего колхозить на клиентах.

ppm85
31-07-2019, 02:41
ppm85, слишком костыльное какое-то решение.
Обычно маршруты на сервере прописываются, чтобы не нужно было ничего колхозить на клиентах. »

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

p.s. Если что, в качестве VPN-сервера используется RRAS(w2012r2).

Sham
31-07-2019, 10:36
например, по событию из планировщика с нужными правами. Пишется же что-то в eventlog при соединении...

DJ Mogarych
31-07-2019, 22:07
ppm85, а что, после соединения с VPN пользователь ходит куда-то не туда? Первый раз о таком слышу. Обычно, соединяясь с VPN, весь трафик через него и идёт.

Не понял, зачем огород с маршрутами-то городить.

ppm85
03-08-2019, 10:20
а что, после соединения с VPN пользователь ходит куда-то не туда? Первый раз о таком слышу. Обычно, соединяясь с VPN, весь трафик через него и идёт. »
Так-то так, если в свойствах VPN-подключения не снимать галку использования маршрута по-умолчанию. Но если весь трафик будет идти через VPN, то его узкого канала не хватит для обычной работы пользователей, помимо той, что через VPN идёт.




© OSzone.net 2001-2012