我可以通过 OSX 上的终端创建隐藏的管理员帐户吗?

我可以通过 OSX 上的终端创建隐藏的管理员帐户吗?

我需要照看大约 300 台小型 Mac,它们有许多不同的管理员帐户,这简直是一场噩梦。

ARD 已经慢慢配置了机器所有者的账户,但是当引入另一个系统管理员时这并没有帮助,因为系统管理员现在必须收集所有用户的用户名和密码。

我认为,最好使用 ARD 运行一个脚本,在每个系统上创建一个隐藏的管理员用户,并指定一个已知的用户名和密码。我只是不知道该怎么做。

任何提示和技巧都将不胜感激。我目前正在尝试编写一个脚本草稿,我会发布它,但其他人也可以随时提出解决方案 :)

答案1

类似这样的事情应该可以工作:

# Create user record in directory services
dscl . -create /Users/hiddenadmin
dscl . -create /Users/hiddenadmin RealName "Hidden Administrator"
dscl . -create /Users/hiddenadmin UniqueID 499  # Use something between 100 and 500 to hide the user
dscl . -create /Users/hiddenadmin PrimaryGroupID 20
dscl . -create /Users/hiddenadmin UserShell /bin/bash
dscl . -passwd /Users/hiddenadmin "e38TpBs1g;.r"  # Obviously, use something else here

# Set up a hidden home folder
dscl . -create /Users/hiddenadmin NFSHomeDirectory /var/hiddenadmin  # or other hidden location
cp -R /System/Library/User\ Template/English.lproj /var/hiddenadmin
chown -R hiddenadmin:staff /var/hiddenadmin

# Grant admin & ARD rights
dseditgroup -o edit -t user -a hiddenadmin admin
/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -users hiddenadmin -privs -all -restart -agent

# Tell loginwindow not to show the user
defaults write /Library/Preferences/com.apple.loginwindow Hide500Users -bool TRUE
# Alternate: defaults write /Library/Preferences/com.apple.loginwindow HiddenUsersList -array hiddenadmin

请注意,kickstart(用于配置 ARD 客户端的命令行界面)相当复杂且不直观,您可能需要反复尝试才能获得所需的配置。下面是Apple 知识库文章和一个它的手册页

答案2

# Tell loginwindow not to show the user
defaults write /Library/Preferences/com.apple.loginwindow Hide500Users -bool TRUE
# Alternate: defaults write /Library/Preferences/com.apple.loginwindow HiddenUsersList -array hiddenadmin

只不过它仍会出现在快速切换模式下(在右侧,聚光灯图标旁边)

相关内容