![我可以通过 OSX 上的终端创建隐藏的管理员帐户吗?](https://linux22.com/image/556766/%E6%88%91%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%20OSX%20%E4%B8%8A%E7%9A%84%E7%BB%88%E7%AB%AF%E5%88%9B%E5%BB%BA%E9%9A%90%E8%97%8F%E7%9A%84%E7%AE%A1%E7%90%86%E5%91%98%E5%B8%90%E6%88%B7%E5%90%97%EF%BC%9F.png)
我需要照看大约 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
只不过它仍会出现在快速切换模式下(在右侧,聚光灯图标旁边)