Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - NET USE на удаленной машине

Ответить
Настройки темы
CMD/BAT - NET USE на удаленной машине

Ветеран


Сообщения: 1639
Благодарности: 50

Профиль | Отправить PM | Цитировать


Изменения
Автор: The_Immortal
Дата: 15-01-2015
Всех приветствую!

Друзья, пытаюсь подключить сетевой диск на удаленной машине через PsExec следующим образом:

Код: Выделить весь код
PsExec.exe \\Ws1 -u domain\user -p password net use z: \\Ws2\SharedFolder

PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com


Команда выполнена успешно.

net exited on Ws1 with error code 0.
Но в итоге сетевой диск на машине Ws2 не создается.

Отправлено: 12:32, 15-01-2015

 

Аватара для cameron

Ветеран


Сообщения: 4677
Благодарности: 1092

Профиль | Отправить PM | Цитировать


Цитата The_Immortal:
Но в итоге сетевой диск на машине Ws2 не создается. »
читаем документацю, вслух
http://technet.microsoft.com/en-us/s.../bb897553.aspx
Цитата:
If you omit a user name, the process will run in the context of your account on the remote system, but will not have access to network resources (because it is impersonating). Specify a valid user name in the Domain\User syntax if the remote process requires access to network resources or to run in a different account. Note that the password and command are encrypted in transit to the remote system.

-------
в личке я не консультирую и не отвечаю на профессиональные вопросы. для этого есть форум.

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:51, 15-01-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 1639
Благодарности: 50

Профиль | Отправить PM | Цитировать


cameron,
Цитата cameron:
Specify a valid user name in the Domain\User syntax »
Цитата The_Immortal:
PsExec.exe \\Ws1 -u domain\user -p password net use z: \\Ws2\SharedFolder »
Что не так?

Отправлено: 14:39, 15-01-2015 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата The_Immortal:
Что не так? »
Как именно Вы определяете, что:
Цитата The_Immortal:
в итоге сетевой диск на машине Ws2 не создается. »
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:45, 15-01-2015 | #4


Ветеран


Сообщения: 1639
Благодарности: 50

Профиль | Отправить PM | Цитировать


Iska,
Цитата Iska:
Как именно»
Легко:
Код: Выделить весь код
>PsExec.exe \\Ws1 -u domain\user -p password net use z: \\Ws2\SharedFolder

PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com


Команда выполнена успешно.

net exited on Ws1 with error code 0.

>PsExec.exe \\Ws1 -u domain\user -p password net use

PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com


Новые подключения не будут запомнены.

В списке нет элементов.

net exited on Ws1 with error code 0.
cameron,
Цитата cameron:
читаем документацю, вслух »
Готов еще что-нибудь почитать вслух и даже с выражением... Но только что? :-(

Попробовал вот таким образом:
Код: Выделить весь код
>PsExec.exe -u domain\user -p password \\ws1 -e net use z: \\Ws2\SharedFolder

PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com


Команда выполнена успешно.

net exited on ws1 with error code 0.

>PsExec.exe -u domain\user -p password \\ws1 net use

PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com


Новые подключения будут запомнены.


Состояние   Локальный  Удаленный                 Сеть

-------------------------------------------------------------------------------
Нет доступа  z:        \\Ws2\SharedFolder     Microsoft Windows Network
Команда выполнена успешно.

net exited on ws1 with error code 0.
Диск создается, но он недоступен. Если создавать его локальным образом, то все в порядке.
Конечно, можно запускать на удаленной машине батник, в котором будет сидеть net use с созданием диска, но это как-то не комильфо.

Последний раз редактировалось The_Immortal, 15-01-2015 в 20:18.


Отправлено: 16:48, 15-01-2015 | #5


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата The_Immortal:
Диск создается, но он недоступен. »
Недоступен тому же пользователю, под которым он присоединялся?
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:02, 15-01-2015 | #6


Ветеран


Сообщения: 1639
Благодарности: 50

Профиль | Отправить PM | Цитировать


Iska, да.

Отправлено: 17:09, 15-01-2015 | #7


Ветеран


Сообщения: 1639
Благодарности: 50

Профиль | Отправить PM | Цитировать


Еще одна попытка (запускаю net use через cmd на стороне клиента):
Код: Выделить весь код
>PsExec.exe -i -d -u domain\user -p password \\ws1 cmd /c net use z: \\Ws2\SharedFolder

cmd started on ws1 with process ID 3516.

>PsExec.exe -u domain\user -p password \\ws1 net use

Новые подключения будут запомнены.


Состояние   Локальный  Удаленный                 Сеть

-------------------------------------------------------------------------------
Нет доступа  z:        \\Ws2\SharedFolder     Microsoft Windows Network
Команда выполнена успешно.

net exited on ws1 with error code 0.
Но диск опять недоступен...


UPD: ох этот синтаксис...
Код: Выделить весь код
>PsExec.exe -e cmd /c net use z: \\Ws2\SharedFolder /user:domain\user password
 
Команда выполнена успешно.
 
net exited on ws1 with error code 0.
 
>PsExec.exe \\ws1 net use
 
Новые подключения будут запомнены.
 
Состояние   Локальный  Удаленный                 Сеть
 
-------------------------------------------------------------------------------
OK           Z:        \\ws12\ConsultantPlus     Microsoft Windows Network
Команда выполнена успешно.
 
net exited on ws1 with error code 0.
Думал, что сработало, но потом залез на машину, а там диска не оказалось... Повторил PsExec.exe \\ws1 net use еще раз и мне выдало состояние "Нет доступа" :-(


UPD2: в общем, исходя из рассуждений отсюда:
Цитата:
The reason why dirve mappings which are created remotely with the help of psexec are useless is pretty trivial:
The mapped drive is valid for the account only under which psexec authenitcated on the remote machine.
The mapped drive is valid only as long as the psexec session lasts. Once psexec disconnects from the remote machine the mapped drive is inaccessible.
можно сделать вывод, что задача в рамках использования PsExec нерешаема...

Может, есть другие варианты удаленного маппинга сетевого диска?

Цитата The_Immortal:
Конечно, можно запускать на удаленной машине батник, в котором будет сидеть net use с созданием диска »
Даже это оказалось не "конечно"...

Последний раз редактировалось The_Immortal, 16-01-2015 в 02:03.


Отправлено: 20:20, 15-01-2015 | #8


Новый участник


Сообщения: 34
Благодарности: 0

Профиль | Отправить PM | Цитировать


The_Immortal, не получилось? Столкнулся с такой же потребностью

Отправлено: 11:33, 06-02-2015 | #9


Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Возможно мой метод не самый элегантный, но я решил задачу так:
Обратите внимание, что для работы psexec необходимо наличие у целевого компа системных шар admin$ ipc$
Понадобится psexec и runfromprocess (http://www.nirsoft.net/utils/run_from_process.html), предварительно складываем runfromprocess.exe и MountX.bat(он ниже) в папку с общим доступом, например \\192.168.0.1\Test\

Пишем батник, назовём его MountX.bat:
Код: Выделить весь код
@echo off
:: Можно исключить строку с удалением диска, мне она нужна по ряду причин. 
net use X: /Delete /Y 
net use X: \\192.168.0.1\share
Пишем второй батник, назовем его RunMountX.bat:
Код: Выделить весь код
@echo off

:: Ключи -d и -n 12 нужны мне для выполнения данной процедуры на большом количестве виндовых машин 
:: @iplist.txt можно заменить на IP целевой машины, если у вас одна, например \\192.168.0.2


:: Работает это вкратце так: Копируем на целевую машину в корень винды батник, монтирующий
:: сетевой диск, и runfromprocess, который этот батник выполнит на целевой машине от имени cmd 

psexec.exe @iplist.txt -u User1 -p 123 -d -n 12 cmd /c "copy /Y \\192.168.0.1\Test\MountX.bat & copy /Y \\192.168.0.1\Test\RunFromProcess.exe %%systemroot%% & RunFromProcess cmd MountX.bat"

Echo Space to exit
pause > null

Всем спасибо!

Последний раз редактировалось username0, 19-02-2016 в 02:54.


Отправлено: 01:50, 26-01-2016 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - NET USE на удаленной машине

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Печать - печать на удаленной машине bykva Сетевые технологии 6 16-12-2011 10:53
PowerShell - [решено] Список процессов на удаленной машине tarasov.evgeny Скриптовые языки администрирования Windows 7 20-10-2010 15:44
VBS/WSH/JS - [решено] Выполнение скриптов на удаленной машине... в частности js RUVATA Скриптовые языки администрирования Windows 12 15-10-2010 12:20
Интернет - Как отключить инет на удаленной машине? surgutfred Microsoft Windows 2000/XP 2 29-08-2008 05:00
Разное - настройки iexplorer через реестр на удаленной машине choodo Microsoft Windows 2000/XP 2 14-08-2008 14:14




 
Переход