问题描述:
我想收集目标服务器的日志信息,生成日志文件,目前知道windos服务器的用户名密码
通过net user 建立连接,copy收集日志vbs,vbs会生成日志文件,通过schtasks建立计划任务
问题来了,通过计划任务虽然任务执行了,vbs执行了,但是无法生成文件!困扰
解决方案:
-
方案一(0)
Schtasks 的权限 必须具有运行该命令的权限。任何用户都可以在本地计算机上计划任务,而且他们可以查看和更改他们所计划的任务。Administrators 组的成员可以计划、查看和更改本地计算机上的所有任务。
要在远程计算机上计划、查看或更改任务,您必须是远程计算机上 Administrators 组的成员,或者必须使用 /u 参数提供远程计算机管理员的凭据。
只有在本地和远程计算机处于同一个域或本地计算机处于远程计算机域信任的域中,您才可以在 /create或 /change 操作中使用 /u 参数。否则,远程计算机无法对指定的用户帐户进行身份验证,也无法验证该帐户是否为 Administrators 组的成员。
必须具有运行该任务的权限。不同的任务要求不同的权限。默认情况下,使用本地计算机的当前用户权限或使用 /u 参数指定的用户权限(如果包含的话)运行任务。要使用不同用户帐户的权限或使用系统权限运行任务,请使用 /ru 参数。
通过Schtasks /ru 参数设置登陆用户的权限是指定更改运行任务的用户帐户。对于指定 Local System 帐户,有效项为“”、“NT AUTHORITY\SYSTEM”或“SYSTEM”
-
设置为/ ru system /Admin、
-
通过几轮实验无法解决问题
2.方案二(0)
Schtasks /rl 设置任务优先权限 设置 HIGHEST 设置为最高权限
多次测验结果无法通过改变运行优先级别,来解决问题
3.方案三 (0)
在schtasks 计划任务中通过启动powershell来执行.bat 文件
执行结果与刚开始的结果相同,无法创建文件夹。
4 方案四 (1)
怀疑是否为系统路径问题,将文件在c盘根目录下无法创建。
换在D盘根目录下也无法执行
是否是根目录或者是路径问题
将文件copy在c$\Windows\System32\系统目录下进行执行
可行。
参考实现方式:
copy 66c221be-6ab2-ef53-1589-fe16877914e2.vbs \\%%a\c$\Windows\System32\66c221be-6ab2-ef53-1589-fe16877914e2.vbs
copy a.cmd \\%%a\c$\Windows\System32\a.cmd
copy a.cmd \\%%a\c$\Windows\System32\t.txt
rem schtasks /create /S %%a /u %%b /p %%c /sc ONCE /st 09:55:00 /ru Administrator /RL HIGHEST /tr "C:\Windows\System32\cmd.exe -Command '& {a.bat}'" /tn test
schtasks /create /S %%a /u %%b /p %%c /sc ONCE /f /st 15:43:00 /ru ""\Administrator /RL HIGHEST /tr "C:\Windows\System32\a.cmd" /tn test
schtasks /run /S %%a /u %%b /p %%c /tn test
网上资源较少,所以靠自己尝试记录过程。