Linux - 用户与组管理

% 个人学习整理,仅供参考 — Xin

没有原因,单纯记不住,并记录一些想法
文章内容,非学习教程,故仅记录(个人)常用命令选项,仅供参考 — Xin


复制即用

  1. 创建普通用户
groupadd -g <标识号1> <用户名>
useradd -u <标识号1> -g users -G <用户名> -m -s /bin/bash  <用户名>
  1. 创建管理不用home目录
groupadd -g <标识号> <用户名>
useradd -u <标识号> -g <充分且必要的组> -G <充分且必要的额外组> -s /bin/bash <用户名>
  1. 删除用户(主目录也清除)
userdel -r <用户名>
groupdel <用户名>

用户与组管理

用户与组的作用
以 “最小权限” 的管理思想,分配权限

  • 按职能划分,分配合适的权限
  • 每个组做一定的事情,分配合理的操作权限
  • 组与组之间也有个别的员工,
    比如组长之间,权限应当与组员不同 — 组长权限属于组员 并 高于组员
    组长可以再加入到组长的group中,以方便同一管理组长group的权限
  • 总结:
    以管理企业的方式,管理Linux系统的权限问题;或者说,像游戏的氏族/部落/联盟的权限的分配思路。

用户

  1. 用户分类

    • 超级用户 — 拥有最高管理权限,默认root
    • 普通用户 — 只能对自己目录下/拥有相关权限的文件进行修改管理。常见 www, ftp, mail …
    • 虚拟用户 — 不可用 于真实用户的登陆,作用是 方便管理文件权限,以便辅助管理文件。默认有bin, nobody …
  2. 常见的用户名

    • root — root用户(最高权限, 建议隐藏/禁用,以保证系统安全)
    • OrangePi — OrangePi的默认用户名 密码123456,同时也有root用户
    • ftp — 对ftp相关文件进行管理
    • www — 对web相关站点文件进行管理

    对于需要高安全性的地方使用的建议:
    1. 系统的root用户最好 禁止登陆 / 禁止远程登陆 —> 同时,创建一个新的用户名,并授予同root一样的最高权限 — 可以避免被爆破/其他方式获取root用户
    2. 密码使用复杂的密码/更为复杂的随生成的密码 — 后期的ssh登陆使用 密钥认证登陆
    3. (同上) 优化密码设置策略

  3. 关键文件
    /etc/passwd — 系统用户配置文件(不要手动修改) — 权限644, 所有用户都有read的权限
    格式: 用户名: 密码: 用户标识号(UID): 组标识号(GID): 注释|描述|备注: 主目录: 默认shell
    /etc/shadow — 加密后的密码存放位置 — 权限600, 仅root超级用户有read权限
    格式: 用户名: 加密密码: 最后一次修改时间: 最小时间间隔: 最大时间间隔: 警告时间: 不活动时间: 失效时间: 保留字段

  4. 用户创建

    这个创建的时候需要考虑:
    1. 属于核心层,管理层,单一职能,普通用户使用层。
    2. 操作的时候,是否需要存储大量的专属的永久性的文件 — 是否需要home文件。
    3. 不推荐直接给user授权,推荐将其加入到合适的group中,为group赋予合适的权限 — 方便统一管理和权限调整。比如 ice用户,原本属于普通用户,只对自己的文件负责和操作,对需要使用的底层的文件/功能,只有r+x的权限,某一天,需要加入核心开发组,这时候,删除ice不再需要的组,加入到核心组,便可以轻松的完成的权限的授予。
    4. 创建用户的时候,最好同时创建一个同名组,该组中用户将授予所有该用户专属的文件操作权限。如 创建 voc用户,同时创建一个voc group,如果有ice用户也可以同时操作voc的文件,将ice用户增加到voc group就可以了,不用的时候,去除即可。
    5. UID最好和自己的GID一一对应,如UID 503,GID 503,方便对应

useradd 命令
  1. 默认指令 useradd
    useradd <command> user_name
    -g group	#group 加入的初始组,必须是当前已存在的。
    -G extra-group	#extra_group
    -b homePath	#homePath	home的起始目录
    -s shell 
    -f inactive	#inactive	用户存在的有效期
    -e expire_date	#expire_date	用户过期时间
    
  2. 修改默认参数/缺省时的参数 useradd -D 后面同上
usermod 命令
usermod <options> userName
-u uid 
-g groupName 
-G extra_groupName 
-d homePath 
-s shell 
-c "注释" 
-l new_userName 
-f 失效日期 
-e 过期日期 
-L 锁定用户密码 
-U 解除密码锁定

  1. 关键文件
    /etc/group — 存放用户组所有的信息
    格式: 组名: 密码: 组标识号: 组内用户列表
groupadd 命令 — 创建group
groupadd -g GID groupName
#GID	组标识号 --- 不可与其他组重复
#groupName	组名

#-o 选项 --- 允许GID与其他已存在组重复
groupadd -go GID groupName
newgrp 切换group

whoami — 确定当前用户
su userName — 切换到指定用户
newgrp groupaName — 切换到指定组

groupdel 命令

groupdel groupName — 使用前提是,当前groupName中 没有用户存在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值