用户管理
1.用户/组基本概念
查看当前登录的用户信息:id
查看文件的owner:LL可以看到文件的所属者
查看运行进程:ps aux | less,分屏显示当前进程
用户和组的存储文件 /etc/passwd
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
用户名:X是密码占位符: 第一个42用户ID:第二个42是组ID:描述符:家目录:shell
/etc/shadow
xirui:$6$TpjODU.qcR3mlKv6$HeVvjKy/kUbGQJd.0kFUeFT6YUsD6mJEvz9mZCKxxWrR64FCcXg4HExRhiSsi88Vw405F8KHpO7XwjMZGb6nf.:17547:0:99999:7:::
登录名:加密口令:最后一次修改时间:最小时间间隔(过多少天之后能改密码):最大时间间隔(多少天之后必须要改密码):警告时间:不活动时间(是到达警告时间以后的一个时间段,会强制修改密码[弹性]可无限重复):失效时间(是一个点,到达这个时间以后,权限被收回[硬性收回]):标志
/etc/group 组
组名:密码占位符,gid,组成员
2.用户/组管理
创建用户,未指定选项
useradd+用户名:未指定用户的主组,附加组,home,shell,UID
创建用户,执行选项
-u 指定uid useradd -u 1001 user01
-d 指定用户家目录 useradd user02 -d /aaa
-s 设置用户登录的shell useradd user05 -s /sbin/nologin //创建用户并指定shell
-G 指定附加组
-M 不指定家目录
usermod -G 1001 user03 //将user03加到1001组里,如果之前有其他附加组,则会覆盖,可通过命令usermod -aG 1003 user03 通过-a追加添加
删除用户
userdel -r user02 完全删除用户的邮箱与家目录等
用户密码
通过passwd更改密码,普通用户只能更改自己的密码
echo 123456 |passwd --stdin maomao100 //stdin是标准输入,由标准输入管道给passwd,并标准输入到maomao100这个选项
组成员管理
用户组分为基本组以及附加组
创建用户时默认会生成一个与用户相同的组
usermod -g(基本组) -G(附加组) 1001 user01
其他选项管理
3.提权
永久提权,用su,直接切换到su - root
临时提权,用sudo,以root身份授权普通用户,配置文件在 vim /etc/sudoers
%wheel ALL = (ALL) NOPASSWD:ALL
wheel是一个特殊组,在这个组里的用户,可以执行sudo,需要将用户添加一个附加组wheel。
4.扩展知识
对称 非对称 哈希算法加密
原内容,与密钥结合,生成密文
迪福赫尔曼算法
shadow加密口令里面会有$$,两个$之间的数字意义。分开加密算法和结果的
linux元年:1970年1月1日
看明白shadow串各个时间
man手册 man 5 passwd shadow group man 3 crypt
useradd maomao100
echo 123456 |passwd --stdin maomao100 //输出定向到maomao100的密码
chage -d 0 maomao100 //更改密码策略
useradd的一些参数
-b, --base-dir BASE_DIR 新账户的主目录的基目录
-c, --comment COMMENT 新账户的 GECOS 字段
-d, --home-dir HOME_DIR 新账户的主目录
-D, --defaults 显示或更改默认的 useradd 配置
-e, --expiredate EXPIRE_DATE 新账户的过期日期
-f, --inactive INACTIVE 新账户的密码不活动期
-g, --gid GROUP 新账户主组的名称或 ID
-G, --groups GROUPS 新账户的附加组列表
-h, --help 显示此帮助信息并推出
-k, --skel SKEL_DIR 使用此目录作为骨架目录
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值
-l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库
-m, --create-home 创建用户的主目录
-M, --no-create-home 不创建用户的主目录
-N, --no-user-group 不创建同名的组
-o, --non-unique 允许使用重复的 UID 创建用户
-p, --password PASSWORD 加密后的新账户密码
-r, --system 创建一个系统账户
-R, --root CHROOT_DIR chroot 到的目录
-s, --shell SHELL 新账户的登录 shell
-u, --uid UID 新账户的用户 ID
-U, --user-group 创建与用户同名的组
-Z, --selinux-user SEUSER 为 SELinux 用户映射使用指定 SEUSER
下面是一个小循环
18个人,1800台服务器
#!/bin/bash
PASSWD=linux1801
for i in {1..100}
do
useradd user$i
echo "$PASSWD" |passwd --stdin user$i
done
原文地址:http://blog.51cto.com/13575691/2062603