Показать полную графическую версию : NET USE на удаленной машине
The_Immortal
15-01-2015, 12:32
Всех приветствую!
Друзья, пытаюсь подключить сетевой диск на удаленной машине через 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 не создается.
Но в итоге сетевой диск на машине Ws2 не создается. »
читаем документацю, вслух
http://technet.microsoft.com/en-us/sysinternals/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.
The_Immortal
15-01-2015, 14:39
cameron, Specify a valid user name in the Domain\User syntax »
PsExec.exe \\Ws1 -u domain\user -p password net use z: \\Ws2\SharedFolder »
Что не так?
Что не так? »
Как именно Вы определяете, что:
в итоге сетевой диск на машине Ws2 не создается. »
The_Immortal
15-01-2015, 16:48
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, читаем документацю, вслух »
Готов еще что-нибудь почитать вслух и даже с выражением... Но только что? :-(
Попробовал вот таким образом:
>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, 17:09
Iska, да.
The_Immortal
15-01-2015, 20:20
Еще одна попытка (запускаю 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: в общем, исходя из рассуждений отсюда (http://forum.sysinternals.com/psexec-net-use_topic21835_post115447.html#115447):
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 нерешаема...
Может, есть другие варианты удаленного маппинга сетевого диска?
Конечно, можно запускать на удаленной машине батник, в котором будет сидеть net use с созданием диска »Даже это оказалось не "конечно"...
Rivendell
06-02-2015, 11:33
The_Immortal, не получилось? Столкнулся с такой же потребностью
username0
26-01-2016, 01:50
Возможно мой метод не самый элегантный, но я решил задачу так:
Обратите внимание, что для работы 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
Всем спасибо!
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.