需要记录现有 Linux 系统上的用户权限。
什么命令、操作等可以让我收集完整的用户资料?
用户权利包括但不限于:
- 文件/目录:读取、写入、执行和删除
- 访问:Root、su、sudo
- 团体/角色:轮子
- 连接:本地、远程
用户类型包括但不限于:匿名、已认证、系统
答案1
权利
- 文件/目录:读取、写入、执行和删除
- 使用 find 命令查找用户拥有的所有文件/目录,或将组设置为用户所属组的所有文件/目录。您需要编写脚本。
- 访问 Root,su,sudo。
- 检查 /etc/passwd 是否与 root 等效。
- 检查 sudoers 配置文件
- 团体/角色:轮子
- 检查 /etc/group 以了解特权组的成员资格。
- 我认为 wheel 组在 Linux 上并不常用
- 连接:本地、远程
- 检查 iptables 的限制
- 检查 /etc/hosts.allow /etc/hosts.deny
- 检查 sshd_config 中的 AllowedUSer 和其他限制
- ftpd 配置、samba 配置等也一样
用户类型
据我所知,匿名、经过身份验证和系统的用户类型在 Linux 上并不是常见的概念。您可能会将“nobody”、“nfsnobody”、“apache”等用户名归入未经身份验证的匿名用户使用的用户名中。
总的来说,这项工作非常繁重,您可能应该寻找安全审计工具。当然有商业工具,我过去使用过一种可以识别不安全用户等的工具。要保持领先地位是一项艰巨的工作。也有免费或开源的安全审计工具。