/etc目录下配置文件说明
passwd系统用户信息文件
- cat /etc/passwd : 查看系统用户信息文件
 
[root@1997sty ~]# cat /etc/passwd | head -1
root:x:0:0:root:/root:/bin/bash
- 用户名
 - 用户密码(已经被隐去,写入其他文件)
 - 用户的uid信息
 - 用户的gid信息
 - 注释
 - 家目录信息
 - 用户登录系统方式
 
/bin/bash通用的解释器/usr/bin/sh等价于/bin/bash/usr/bin/bash等价于/bin/bash/sbin/nologin无法登录系统/usr/sbin/nologin无法登录系统

shadow系统用户密码文件
- cat /etc/shadow : 查看系统用户密码文件
 

group组用户记录文件
- cat /etc/group : 查看组用户记录文件
 

gshadow用户组密码文件
- cat /etc/gshadow : 查看组用户密码文件
 

系统的操作命令
useradd命令
创建用户命令
- useradd 1997sty : 创建一个
1997sty用户 - useradd 1997sty -M -s /sbin/nologin : 创建一个
1997sty用户,不创建家目录,指定shell登录方式为/sbin/nologin(无法登录的用户) - useradd 1997sty -u 2000 : 创建一个
1997sty用户,指定用户uid为2000 - useradd 1997sty -g 1997sty_1 -G 1997sty_2 : 创建一个
1997sty用户,指定用户所属组为1997sty_1,指定用户附属组为1997sty_2 - useradd 1997sty -c "manager" : 创建一个
1997sty用户,注释信息为manager 
指定用户shell登录方式
/bin/bash通用的解释器/usr/bin/sh等价于/bin/bash/usr/bin/bash等价于/bin/bash/sbin/nologin无法登录系统/usr/sbin/nologin无法登录系统
执行参数
- -M : 不创建家目录
 - -s : 指定用户shell登录方式
 - -u : 指定用户uid信息
 - -g : 指定用户所属主要组信息
 - -G : 指定用户所属附属组信息
 - -c : 指定用户注释信息
 
usermod命令
修改用户信息
- usermod 1997sty -s /sbin/nologin : 修改
1997sty用户,指定shell登录方式为/sbin/nologin(无法登录的用户) - usermod 1997sty -u 3000 : 修改
1997sty用户,指定uid为3000 
指定用户shell登录方式
/bin/bash通用的解释器/usr/bin/sh等价于/bin/bash/usr/bin/bash等价于/bin/bash/sbin/nologin无法登录系统/usr/sbin/nologin无法登录系统
执行参数
- -s : 指定用户shell登录方式
 - -u : 指定用户uid信息
 - -g : 指定用户所属主要组信息
 - -G : 指定用户所属附属组信息
 - -c : 指定用户注释信息
 
userdel命令
删除用户信息
- userdel 1997sty : 删除
1997sty用户 - userdel -r 1997sty : 删除
1997sty用户以及用户的家目录 
passwd命令
修改用户密码信息
- passwd : 修改当前用户密码
 - passwd 1997sty : 修改
1997sty用户密码 
非交互式设置密码
- echo 123456|passwd --stdin 1997sty : 修改
 1997sty用户密码
企业中密码管理
- 密码要复杂12位以上字母数字及特殊符号
 - 保存好密码信息 
keepass密码保险柜,本地存储密码lastpass密码保险柜,在线存储密码 - 大企业 用户和密码统一管理 相当于活动目录AD openldap域 用户信息统一保存在一个用户管理服务器中 用户的家目录中的文件 用户密码 用户名称
 - 动态密码:动态口令,第三方提供自己开发也很简单
 
groupadd命令
创建用户组
- groupadd 1997sty_group : 创建
1997sty_group用户组 - groupadd -g 1234 1997sty_group : 创建
1997sty_group用户组,gid为1234 
groupmod命令
修改用户组
- groupmod -n group_1997sty 1997sty_group : 修改
1997sty_group用户组名为group_1997sty - groupmod -g 1234 1997sty_group : 修改
1997sty_group用户组gid为1234 
groupdel命令
删除用户组
- groupdel 1997sty_group : 删除
1997sty_group用户组 
chown命令
修改文件属主和属组信息
- chown 1997sty /root/1997sty : 修改
1997sty文件属主信息为1997sty - chown 1997sty.1997sty /root/1997sty : 修改
1997sty文件属主和属组信息为1997sty - chown -R 1997sty.1997sty /root/1997sty : 修改
1997sty目录,子目录和目录内文件的属主和属组信息为1997sty 
id命令
查看用户信息
- id : 查看当前用户信息
 - id root : 查看
root用户信息 
w命令
显示正在登陆系统的用户信息
- w : 显示正在登陆系统的用户信息
 
 16:23:53 up 4 days,  1:00,  1 user,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    10.0.0.1        13:41    1.00s  0.22s  0.22s -bash
参数说明
- 登录用户
 - 登录方式 pts/x 远程登录系统 tty1 本地登录
 - 登录到服务器的地址
 - 登录时间
 - IDLE 空闲时间
 - 用户操作系统 消耗的CPU资源时间
 - 用户操作系统 消耗的CPU资源时间
 - 用户进行的操作
 
发送文本给其他登录用户
- echo "发送该文本到其他登录用户的命令行" >/dev/pts/1 : 发送该文本到其他登录用户的命令行
 
su命令
切换用户命令
- su 1997sty : 切换到
1997sty用户 - su - 1997sty : 切换到
1997sty用户,并且更改所有变量(使用env命令查看) 
[root@1997sty ~]# su - 1997sty
上一次登录:一 11月 25 18:23:58 CST 2019pts/2 上
[1997sty@1997sty ~]$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/1997sty/.local/bin:/home/1997sty/bin
[1997sty@1997sty ~]$ exit
登出
[root@1997sty ~]# su 1997sty
[1997sty@1997sty root]$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/.local/bin:/root/bin
visudo命令
编辑
/etc/sudoers只读文件,可以赋予其他用户权限
1997sty ALL=(ALL) /usr/sbin/useradd, /usr/bin/rm该行文本赋予了1997sty用户useradd,rm命令root级别的权限,修改完成后:wq保存退出(位于文本第91行)
## Next comes the main part: which users can run what software on
## which machines (the sudoers file can be shared between multiple
## systems).
## Syntax:
##
##      user    MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
1997sty ALL=(ALL)       /usr/sbin/useradd, /usr/bin/rm
配置方法
#配置单个或多个命令
1997sty ALL=(ALL)       /usr/sbin/useradd, /usr/bin/rm
#授权单个命令目录或多个命令目录,并排除visudo命令
/usr/sbin/*, !/usr/sbin/visudo , /usr/bin/*
#不需要输入用户密码,可以直接sudo方式执行命令
NOPASSWD: /usr/sbin/*, !/usr/sbin/visudo , /usr/bin/*
sudo命令
让普通用户执行root命令的一个工具
- sudo useradd 1997stysudo : 使用
sudo命令创建一个1997stysudo用户(普通用户执行该命令且被赋予该root权限) - sudo rm -rf /root/1997sty : 使用
sudo命令强制删除1997sty文件(普通用户执行该命令且被赋予该root权限) - sudo -l : 使用
sudo命令查看被赋予的root权限(普通用户执行该命令且被赋予该root权限) 
sudo命令近期第一次使用时提示以下信息并要求输入密码
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
我们信任您已经从系统管理员那里了解了日常注意事项。
总结起来无外乎这三点:
  #1) Respect the privacy of others.
  #1) 尊重别人的隐私。
  #2) Think before you type.
  #2) 输入前要先考虑(后果和风险)。
  #3) With great power comes great responsibility.
  #3) 权力越大,责任越大。
[sudo] password for 1997sty: 
User oldboy may run the following commands on 1997sty:
  (ALL) /usr/sbin/useradd, /usr/bin/rm          
           最后一次更新于2019-11-29 18:52         
 
        
Alipay
Wechat
           
 
           
   
  
0 条评论