linux上的用户管理

简介: 作为一个专业的服务器发行版,CentOS上存在着n多个用户,作为一个专业的运维工程师,linux的用户管理和用户组的管理是做为一个SA必不可少的工作. 下面我们就先来谈谈linux中的用户管理:useradd可以在系统中新建一个用户用法如下: useradd [选项] 用户名常用选项: ...

作为一个专业的服务器发行版,CentOS上存在着n多个用户,作为一个专业的运维工程师,linux的用户管理和用户组的管理是做为一个SA必不可少的工作. 下面我们就先来谈谈linux中的用户管理:

useradd可以在系统中新建一个用户

用法如下: useradd [选项] 用户名
常用选项:
    -u      指定用户的UID
    -g      指定用户的初始组ID
    -G      指定用户的附加组
    -c      为用户添加注释
    -d      指定用户的家目录
    -m      为用户添加家目录
    -M      添加用户时不添加家目录
    -s      为用户指定shell
    -N      为用户设定特定的初始组,不创建与用户同名的初始组
    -p      直接为用户定密码
    -o      为用户创建的UID允许是已经存在的UID
    -U      为用户创建一个跟用户名同名的组
    -r      创建一个系统用户(UID在1到499之间)
    -b      为用户指定特殊的家目录(未加这个选项的话,则在/home目录上为用户添加家目录)
    -e      指定用户密码过期的时间(格式为YYYY-MM-DD)
    -f      指定用户密码过期后等待的天数(0为密码过期后立即失效,-1为永不失效)

passwd可以设定用户的密码信息

任何用户输入这个命令都可以只可以更改自己的密码口令

只有管理员可以用这个命令接上别的用户名来更改别的用户的密码

命令如下: passwd [选项] [用户]

常用选项:
    -l          锁定用户
    -u          解锁用户
    --stdin     用标准输入的方式为用户添加密码(脚本批量添加用户经常使用)
    -d          快速删除指定用户的密码(只有root可以使用)
    -e          强迫用户下次登陆的时候必需修改密码
    -n          指定密码最短有效期限
    -x          指定密码最大使用期限
    -w          指定密码失效前多少天开始警告
    -i          指定密码过期之后还能使用多少天
    -S          输出指定用户的密码状态

系统中/etc/passwd和/etc/shadow这两个文件保存了该系统上的所有的用户信息.

/etc/passwd文件格式说明:
    root:x:0:0:root:/root:/bin/bash 
    bin:x:1:1:bin:/bin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

这个文件共分为七段,相隔两段之间用“:”隔开,
    第一段为用户的用户名,
    第二段为用户的密码占位符,在这个文件里以"*"代替,
    第三段为用户的UID,
    第四段为用户的确GID,
    第五段为用户的注释信息,
    第六段为用户的家目录,
    第七段为用户的SHELL。
/etc/shadow文件格式说明:
    bin:*:15980:0:99999:7:::
    daemon:*:15980:0:99999:7:::
    adm:*:15980:0:99999:7:::
    lp:*:15980:0:99999:7:::
    sync:*:15980:0:99999:7::: 
这个文件共分为九段,相隔两段也是用":“隔开,
    第一段为用户名,
    第二段为加密后的密码存放位置,
    第三段为上次修改密码的时间(从1970年1月1日起的天数),
    第四段为距离上次修改密码后多少天才可以再次修改密码
    第五段为密码过期的时间
    第六段为密码过期前,提前警告的天数
    第七段为密码失效日期之后多少天这个帐号将被锁定
    第八段为帐号失效日期
    第九段为保留字段
    ```
这两个文件是系统安全方面很重要的文件,尤其是/etc/shadow这个文件,我们可以看到系统上这个文件的权限:

    [root@localhost ~]# ls -lah /etc/passwd /etc/shadow
    -rw-r--r-- 1 root root 1.2K Mar 19 16:30 /etc/passwd
    ---------- 1 root root  782 Mar 19 16:30 /etc/shadow

所有的用户都没有权限读取到这个文件(当然root可以读取滴),所以管理员必须要小心保护好这个文件,以免这台服务器沦为不法分子的“肉鸡”。

说完了添加用户,再来说说用户管理方面的那些事。

usermod用来来更改用户的某些信息

命令如下: usermod [选项] 用户名

常用选项:
-a 为用户添加附加组
-c 为用户添加注释
-d 为用户指定家目录
-e 指定密码过期时间
-f 指定密码失效日期
-g 更改用户GID
-G 为用户添加附加组
-L 锁定用户密码
-m 移动用户家目录到新的目录
-p 为用户指定新的密码
-s 更改用户的SHELL
-u 更改用户的UID
-U 解锁用户的密码

####userdel用来删除某个用户。

用法如下: userdel [选项] 用户

常用选项:

    -f          强制删除用户
    -r          删除用户家目录(删除前请再三确认这个用户家目录里没有很重要的文件,否则。。。。。)
####chage命令:这个命令可以用来修改帐号和密码的有效期限。

用法如下: chage [选项] 用户名

常用选项
-m 密码可更改的最小天数,即为上次修改密码之后过多久用户可以再次修改自己的密码,为0则代表任何时候都可以更改密码
-M 密码最大有效天数
-w 密码到期前的警告天数
-E 帐号到期的天数
-d 上一次更改密码的时间,从1970年1月1日到今天的总共天数
-I 密码失效日期,密码过期之后的多少天帐号将被锁定而不能登陆

这些信息保存在/etc/login.defs中
PASS_MAX_DAYS 99999 密码最大有效天数
PASS_MIN_DAYS 0 密码可更改的最小天数
PASS_MIN_LEN 5 密码最小长度
PASS_WARN_AGE 7 密码过期前的警告天数
```
管理员可以修改这个配置文件中的这部分来为新增加的用户增强帐号的安全级别.

祝大家工作学习愉快!!

目录
相关文章
|
7月前
|
存储 运维 安全
linux用户管理
在Linux系统中,用户管理涉及创建、修改和删除用户及用户组,确保权限控制。关键命令如`useradd`用于新建用户,`usermod`调整用户属性,`userdel`删除用户,`passwd`变更密码。用户分为超级用户(root)、普通用户和系统用户。用户组管理包括`groupadd`、`groupdel`、`groupmod`和`gpasswd`。系统通过`/etc/passwd`和`/etc/group`文件存储用户和组信息,采用基于用户和组的权限模型。`su`和`sudo`用于切换用户权限,而`/etc/skel`目录提供新用户家目录的模板。这些机制保障了系统的安全和资源管理。
43 2
|
7月前
|
Linux API 数据安全/隐私保护
【Linux 用户管理】Linux用户身份信息获取与管理API 接口
【Linux 用户管理】Linux用户身份信息获取与管理API 接口
81 0
|
7月前
|
存储 Linux 数据安全/隐私保护
Linux文件权限及用户管理
Linux文件权限及用户管理
54 0
|
7月前
|
Linux Shell 数据安全/隐私保护
Linux用户管理
简单说一下 Linux的用户管理
88 1
|
Linux Go 数据安全/隐私保护
linux常用命令手册 用户管理useradd 文件权限管理chmod 搜索管理find grep
linux常用命令手册 用户管理useradd 文件权限管理chmod 搜索管理find grep
99 2
|
7月前
|
Linux 程序员 Shell
Linux编辑器,开机重启,用户注销,用户管理 常用命令
Linux编辑器,开机重启,用户注销,用户管理 常用命令
132 0
|
安全 Linux Shell
Linux用户管理指南:创建、删除、权限、最佳实践,全面掌握用户管理技巧
Linux用户管理指南:创建、删除、权限、最佳实践,全面掌握用户管理技巧
1582 0
|
7月前
|
大数据 Linux 数据安全/隐私保护
linux语法复习-01天-用户管理-关机和重启
linux语法复习-01天-用户管理-关机和重启
|
7月前
|
缓存 Unix Linux
Linux 常用命令汇总(四):信息显示 & 用户管理
hostname是一个 Unix/Linux 命令行工具,用于显示或设置系统的主机名dmesg是一个在 Unix-like 系统中常用的命令行工具,用于显示内核缓冲区的消息uptime是一个在 Unix 和类 Unix 系统(如 Linux)中常用的命令,用于显示系统已经运行了多长时间,以及当前有多少用户登录和系统负载的平均值stat是一个在 Unix 和类 Unix 系统(如 Linux)中常用的命令行工具,用于显示文件或文件系统的状态信息du。
|
7月前
|
Linux Shell 数据安全/隐私保护
Linux用户管理
Linux用户管理
31 0