我想要运行 sysinternals 工具 psloglist 来获取位于另一个域的服务器的事件日志。
如果我跑
runas /netonly /user:DOMAIN2\USER psloglist \\TARGETSERVER
然后出现一个新的命令窗口,我看到列出了正确的数据。
我怎样才能在 DOMAIN1 上的机器上的文件中捕获此输出?
我试过
runas /netonly /user:DOMAIN2\USER psloglist \\TARGETSERVER > event.log
捕获了 runas 密码提示。
我还尝试使用创建批处理文件
psloglist \\TARGETSERVER > event.log
并运行
runas /netonly /user:DOMAIN2\USER mybatchfile
但它会立即返回,并且没有出现命令窗口,也没有创建文件。
我认为这是因为 DOMAIN2\USER 无法在我的计算机上创建 event.log 文件,我该如何解决这个问题?
DOMAIN1 与 DOMAIN2 之间不信任,因此我无法添加它。
答案1
那么你有两个选择可以使用:
运行方式 /savecred /domain2\user xxxx xxxxx
然后输入密码以便“保存”凭据,然后再次运行以获取输出......
runas /savecred /domain2\user xxxx xxxxx > output.log
或者您使用一个 VBS 脚本,其中的密码以纯文本形式存储。如果这对您有用,请告诉我,我会想办法,但是纯文本密码从来都不是一个好主意......
答案2
似乎我错过了一个技巧,尽管 psloglist 的所有示例都只显示了带有用户名的参数 -u,但它确实适用于域。
所以我的解决方案是
psloglist \\TARGETSERVER -u DOMAIN2\USER -p PASSWORD > event.log
请注意,必须提供密码,否则提示将被重定向吞没。