复制 Windows 2003 本地帐户

复制 Windows 2003 本地帐户

我需要将 Windows 2003 服务器的本地用户帐户复制到另一台 Windows 2003 服务器上。由于我是 UNIX 专家,所以我有点不知所措(在 UNIX 系统上,我只需复制相关的 /etc/passwd、/etc/shadow 和 /etc/groups 行即可完成)。理想情况下,复制的用户将拥有与原始用户相同的密码。在这种情况下,ACL/等并不是什么大问题。

在网上找到了一些关于从 2003 迁移到 2008 的资料,以及对 AddUsers 工具的引用,但资源工具包下载似乎不再包含该工具。

有提示吗?

答案1

这肯定不是 AD 帐户吧?

我不知道如何导出用户和密码,除非您使用 jack the ripper 之类的工具。相当于 /etc/shadow 的是 c:\windows\system32\config\SAM - 不过您需要一个特殊的实用程序才能从中读取。

我喜欢的方法是在 GUI 中导出用户列表,然后稍后设置一些密码。

您可以像这样导出用户列表:

  1. 单击开始,右键单击我的电脑,选择管理。

  2. 在左侧窗格中,展开系统工具,然后展开本地用户和组。

  3. 在左侧窗格中选择用户,然后在右侧窗格中右键单击空白处并选择导出列表并选择 CSV 作为文件类型。

然后,您可以在 Excel 中使用一些操作来制作一个充满“net user”命令的文本文件,并将其粘贴到命令提示符中。要使用“net user”添加一个用户:

net user username_here password_here /add

或者你可以让网络用户像这样输出一个随机密码:

net user username_here /add /random /passwordchg:yes

...这将输出一个随机密码并强制用户在下次登录时更改密码。

但是,我更喜欢使用 for 命令(它与 bash 中的 for 命令类似,但远不如它好用)和“net user /add”命令。您可以使用它来遍历 csv 文件,并触发 net user 命令,如下所示:

for /f "delims=, tokens=1,2" %a in (c:\yourcsvfile.csv) do net user %a /add /fullname:"%b" /random /passwordchg:yes >c:\passwords.txt

这将使用一个 CSV 文件,其中第一列为用户名,第二列为用户全名,并随机设置密码并将结果输出到 c:\passwords.txt

要了解更多信息,请打开命令提示符并输入:for /? net user /? net localgroup /?

或者打开Windows帮助中心并搜索“net user”,然后在“帮助主题”下找到它。

如果您正在使用 AD,请查看 dsadd 和 dsquery。

相关内容