如果对 Proxmox VE 全栈管理感兴趣,可以关注“Proxmox VE 全栈管理”专栏,后续文章将围绕该体系,从多个维度深入展开。
概要:Proxmox VE 利用 pveum 工具构建了完备的用户与权限管理体系。用户管理可创建、修改、删除用户,支持多种认证域。组管理能便捷地创建、删除组并批量分配权限。通过自定义角色和 ACL 可精准绑定权限到资源路径。还能生成受限 API 令牌增强安全。其审计与维护涵盖查看日志、备份关键配置文件。在典型场景中,能满足管理员组、开发团队等不同权限需求,权限分类广泛,预定义角色简化了配置流程 。
Proxmox VE用户与权限管理命令的完整指南,涵盖用户、组、角色、权限分配、审计及备份恢复等核心操作:
一、用户管理命令
创建用户
pveum useradd <userid>@<realm> --password <密码> --comment "描述" --groups <组名> # 示例:创建本地用户并加入admin组 pveum useradd user1@pve --password P@ssw0rd --groups admin
参数说明:
<realm>
支持PAM/Proxmox/LDAP/AD等认证域,密码仅对本地认证域有效。修改用户属性
pveum usermod <userid>@<realm> --enable 0 # 禁用用户 pveum usermod user1@pve --groups support,dev # 调整用户组 pveum passwd user1@pve # 修改密码
删除用户
pveum userdel user1@pve
二、组管理命令
创建/删除组
pveum groupadd <组名> --comment "描述" # 示例:创建运维组 pveum groupadd ops-team --comment "SRE Team" pveum groupdel ops-team # 删除组
查看组成员
pveum user list --groups <组名> # 示例:查看admin组成员
三、角色与权限分配命令
创建自定义角色
pveum roleadd <角色名> --privs "权限列表" # 示例:创建仅允许电源管理的角色 pveum roleadd VM-Power --privs "VM.PowerMgmt VM.Console"
预定义角色:
Administrator
(完全控制)PVEAuditor
(只读)PVEVMAdmin
(虚拟机全权管理)PVEDatastoreUser
(存储基础权限)
权限分配(ACL管理)
pveum aclmod <路径> --user <用户> --role <角色> # 用户级授权 pveum aclmod /vms/101 --group dev-team --role PVEVMUser # 组级授权
路径示例:
/
:根路径(全集群)/vms
:所有虚拟机/storage/nas
:指定存储
查看有效权限
pveum user permissions <userid>@<realm> # 查看用户权限 pveum path <对象路径> # 查看路径权限继承关系
四、API令牌管理
生成API令牌
pveum token add <userid>@<realm> <令牌名> --privsep 0 --expire 30d # 示例:生成仅能查看VM的令牌 pveum token add user1@pve monitor --privsep 1 --privs "VM.Audit"
参数说明:
--privsep
启用权限分离,--expire
设置过期时间。撤销令牌
pveum token remove <userid>@<realm>!<令牌名>
五、权限审计与日志
查看操作日志
journalctl -u pveproxy.service # 查看Web访问日志 journalctl -u pve-ha-lrm # 高可用资源日志 tail -f /var/log/pve/tasks/index.html # 实时监控任务日志
导出ACL配置
pveum config dump --output-format json > acl_backup.json
六、备份与恢复权限配置
配置文件备份
cp /etc/pve/user.cfg /backup/ # 用户与组配置 cp /etc/pve/domains.cfg /backup/ # 认证域配置 tar -czvf pve_config.tar.gz /etc/pve/* # 全配置打包
灾难恢复步骤
- 重装系统后,将备份文件复制到
/etc/pve/
- 重启服务:
systemctl restart pve-cluster pveproxy
- 验证权限:
pveum user list
- 重装系统后,将备份文件复制到
七、高级场景示例
创建管理员组
pveum groupadd admin --comment "Full Access" pveum aclmod / -group admin -role Administrator pveum usermod user2@pve --group admin
限制开发团队仅管理特定VM
pveum roleadd DevOps --privs "VM.Config.CPU VM.Config.Memory" pveum aclmod /vms/200-299 --group dev --role DevOps
跨域同步LDAP用户
pveum realm sync ldap-realm --enable-new 1 # 同步LDAP用户到Proxmox
附:权限分类速查表
权限类型 | 关键权限示例 |
---|---|
节点/系统 | Sys.Modify (网络配置)、Sys.PowerMgmt |
虚拟机 | VM.Allocate (创建VM)、VM.Migrate |
存储 | Datastore.Allocate (创建存储) |
用户/组 | User.Modify 、Group.Allocate |
通过上述命令,可实现从基础用户管理到复杂权限模型的构建,满足企业级虚拟化环境的安全管控需求。建议结合man pveum
查阅最新参数说明。