我知道我有现有的组和用户,但我不确定他们的关联。是否有可用于列出所有用户或所有组的 shell 命令和用于列出指定用户/组的所有组/用户的命令?
因此,类似showusers会列出所有用户,并showgroups -u thisuser显示其中的所有组thisuser。
令人惊讶的是,我很难找到执行此操作的命令。有人知道怎么加群吗?谢谢!
或者做这样的事情:
# create the MySQL group
dscl . create /Groups/mysql
# give it some group id
dscl . create /Groups/mysql gid 296
Run Code Online (Sandbox Code Playgroud) 我正在编写一个 Web 应用程序,它使用 .NET Windows 身份验证并依赖于用户的组成员身份来授权他们访问网站的各个区域。现在我在一台不属于域并且不使用 AD 的开发机器上,相反我只是使用本地用户组。一般来说,这可以正常工作。
但是,当我测试应用程序时,我需要在我的用户帐户中添加和删除角色以验证一切正常。当我添加角色时,它似乎不会传播,直到我注销 Windows 并再次登录。
是否可以在无需注销的情况下强制更新组成员身份?
在 ubuntu 服务器上,我不止一次注意到,在将用户添加到组后,该用户没有组权限,直到我重新启动系统。例如:
用户 'hudson' 需要读取目录 'root:shadow /etc/shadow' 的权限,所以我将 hudson 添加到影子组。哈德森仍然无法阅读。所以,我 'sudo shutdown -h -r now' 并且当系统再次出现时,用户 hudson 可以读取。
是否需要重新启动或在将用户添加到组后是否有更好的方法来应用权限?
我已经使用以下设置进行 LDAP 身份验证
AuthName "whatever"
AuthType Basic
AuthBasicProvider ldap
AuthLDAPUrl "ldap://server/OU=SBSUsers,OU=Users,OU=MyBusiness,DC=company,DC=local?sAMAccountName?sub?(objectClass=*)"
Require ldap-group CN=MySpecificGroup,OU=Security Groups,OU=MyBusiness,DC=company,DC=local
Run Code Online (Sandbox Code Playgroud)
这有效,但是我必须将所有要进行身份验证的用户放入MySpecificGroup. 但是在我配置的 LDAP 服务器上,MySpecificGroup它还包含MyOtherGroup具有另一个用户列表的组。
但是那些用户MyOtherGroup没有经过身份验证,我必须手动将它们全部添加到MySpecificGroup并且基本上不能使用嵌套分组。我使用的是 Windows SBS 2003。
有没有办法配置 Apache LDAP 来做到这一点?或者是否存在可能无限递归的问题,因此不允许?
我使用的是 Windows Server 2008 R2,并且在计算机 ComputerA 的“网络服务”帐户下运行了一个 Windows 服务。此 Windows 服务想要访问共享文件夹(在另一台计算机 ComputerB 上),该文件夹授予 GroupA 组读取权限。所以需要将ComputerA的电脑账号加入GroupA,重启ComputerA。
我的问题是:有没有办法让组成员资格在不重新启动 ComputerA 的情况下立即生效?
在 Microsoft Docs 文章默认组中阅读了这两个组的描述:
域管理员
该组的成员可以完全控制域。默认情况下,该组在所有域控制器、所有域工作站和所有域成员服务器加入域时都是管理员组的成员。默认情况下,管理员帐户是该组的成员。由于该组在域中具有完全控制权,因此请谨慎添加用户。”
管理员
该组的成员可以完全控制域中的所有域控制器。默认情况下,域管理员和企业管理员组是管理员组的成员。管理员帐户也是默认成员。由于该组在域中具有完全控制权,因此请谨慎添加用户。”
并且同一篇文章指出两个组对其默认用户权限的描述完全相同:
从网络访问这台计算机;调整进程的内存配额;备份文件和目录;绕过遍历检查;更改系统时间;创建一个页面文件;调试程序;使计算机和用户帐户受信任以进行委派;从远程系统强制关闭;增加调度优先级;加载和卸载设备驱动程序;允许本地登录;管理审计和安全日志;修改固件环境值;型材单一工艺;型材系统性能;从扩展坞中取出计算机;恢复文件和目录;关闭系统;取得文件或其他对象的所有权。
此外,Microsoft Docs 文章默认本地组包括对管理员组的以下描述:
该组的成员可以完全控制服务器,并可以根据需要为用户分配用户权限和访问控制权限。管理员帐户也是默认成员。当此服务器加入域时,Domain Admins 组会自动添加到该组中...”
[强调我的]
鉴于以上,我不明白:
此问题是问题的子问题,并在问题的上下文中提出:加入 AD 的机器的本地用户的上下文是域机器帐户还是本地机器帐户?
我刚刚在我的 Ubuntu Server 机器上犯了一个愚蠢的错误:我使用 将自己添加到一个组中usermod -G,之后我发现了这个-a选项......
结果我现在出admin群了,失去了sudo权限。我可以解决这个问题,但我想知道我可能会从哪些其他组中删除?我的用户是第一个,所以我要查找的是第一个用户在安装时添加到的组列表。
权限是让我对 Linux 有一段时间感到困惑的东西。因此,此刻我的 NGinx 和 PHP-FPM 实例都与用户和组一起运行:
万维网数据
这是标准吗?当我遇到文件上传时遇到了麻烦。
例如,一个文件将与用户和组 www-data 一起上传。现在,由于我在 Web 应用程序中设置权限 (0440) 的方式,我无法使用普通帐户通过 ssh 登录来下载这些文件。这是无法改变的。
我正在考虑更改我的 nginx 和 php 实例以保留该组,但将它们更改为以我的用户名运行。
这里处理权限的正确方法是什么?谢谢你。
搜索了答案,但在这里什么也没找到...
长话短说:一家非营利组织急需对其基础设施进行现代化改造。首先是找到一种替代方法来管理多个 Linux 主机上的用户帐户。
我们有 12 台服务器(物理和虚拟)和大约 50 个工作站。我们有 500 名这些系统的潜在用户。多年来构建和维护系统的个人已经退休。他编写了自己的脚本来管理这一切。它仍然有效。那里没有抱怨。但是,很多东西是非常手动且容易出错的。代码很乱,更新后经常需要调整。最糟糕的是几乎没有编写文档。只有一些自述文件和随机笔记可能不再相关,也可能不再相关。因此,维护成为一项艰巨的任务。
目前,每个系统上的帐户都通过 /etc/passwd 进行管理。随着帐户添加到“主”服务器上,更新通过 cron 脚本分发以更正系统。一些用户必须有权访问所有系统(如系统管理员帐户),其他用户需要访问共享服务器,而其他用户可能需要访问工作站或仅访问其中的一部分。
是否有工具可以帮助我们管理满足以下要求的帐户?
我在网上搜索过,所以没有找到合适的。我们乐于接受任何建议。谢谢你。
编辑:这个问题被错误地标记为重复。链接到答案仅讨论在所有系统上具有相同的主目录,而我们需要根据当前登录的系统用户(多个主目录)拥有不同的主目录。此外,访问只需要授予某些机器而不是全部机器。Mods,请理解问题的全部范围,而不是仅仅将其标记为重复点...