您的位置:首页 > 其它

用户、用户组管理命令笔记和习题

2015-04-07 23:50 211 查看
用户、组、权限

安全上下文(secure context):

权限:
r, w, x
文件:
r: 可读,可以使用类似cat等命令查看文件内容
w: 可写,可以编辑或删除此文件
x: 可执行,eXecutable, 可以在命令提示符下当做命令提交给内核运行

目录:
r: 可以对此目录执行ls以列出内容的所有文件
w: 可以在此目录创建文件
x: 可以使用cd 切换进此目录,也可以使用ls -l 查看内部文件的详细信息

rwx:
r-- 只读
r-x 读和执行
--- 无权限

0 000 --- 无权限
1 001 --x 执行
2 010 -w- 写
3 011 -wx 写和执行
4 100 r-- 只读
5 101 r-x 读和执行
6 110 rw- 读写
7 111 rwx 读写执行

755: rwxr-xr-x

用户: UID, /etc/passwd
组: GID, /etc/group

影子口令:
用户:/etc/shadow
组: /etc/gshadow

用户类别:
管理员: 0
普通用户 : 1-65535
系统用户 1-499
一般用户 500-60000

用户组组别:
管理员组:
普通组:
系统组:
一般组:

用户组类别:
私有组: 创建用户时,如果没有为其制定所属的组,系统会自动为其创建一个与用户名同名的组
基本组: 用户的默认组
附加组,额外组: 默认组以外的其他组

进程: tom tom
对象:

/etc/passwd
account: 登录名
password: 密码
UID:
GID: 基本组ID
comment:注释
HOME DIR: 家目录
SHELL: 用户的默认shell

/etc/shadow
account: 登录名
encrypted password: 加密的密码; 加!! 可以锁定该账号

加密方法:
对称加密: 加密和解密使用同一个密码
公钥加密: 每个密码都成对出现,一个为私钥(secret key),一个为公钥(public key)
私钥加密,公钥解密;
公钥加密,私钥解密。
单向加密:散列加密: 提取数据特征码,常用语数据完整性校验
1. 雪崩效应
2. 定长输出
MD5: Message Digest, 128位定长输出
SHA1 : secure hash Algorithm, 160位定长输出

useradd USERNAME
groupadd GRPNAME

用户管理:
useradd, userdel, usermod, passwd, chsh, chfn, finger, id, chage

组管理:
groupadd, groupdel, groupmod, gpasswd

权限管理:
chown, chgrp, chmod, umask

/etc/paswd:
用户名:密码:UID:GID注释:家目录:默认SHELL

/etc/group:
组名:密码:GID:以此组为其附加组的用户列表

/etc/shadow:
用户名:密码:最近一次修改密码的时间:最短使用期限:最长使用期限:警告时间:非活动时间:过期时间:

useradd [options] USERNAME
-u UID 要大于等于500,但是不能是已经使用的
-g GID (基本组) 组一定要存在
-G GID,... (附加组) 可以有多个
-c "COMMENT"
-d /path/to/directory 指定某个目录为用户家目录
-s SHELL路径
-m -k(将/etc/skel下内容复制到home)强制为用户创建家目录
-M 不给用户创建家目录, 即使/etc/login.defs中定义用户必须有家目录
-r 添加系统用户(1-499的id号,不能登录系统,没有家目录)
/etc/login.defs

环境变量:
PATH
HISTSIZE
SHELL 保存当前的SHELL

/etc/shells: 指定了当前系统可用的安全shell
eg: useradd -c "tony Blare" -d /home/blare user4

userdel:
userdel [options] USERNAME 不指定参数,用户的家目录不会被删除
-r: 同时删除用户的家目录

id: 查看用户的账号属性信息
-u 显示用户名
-g 显示默认组
-G 显示附加组
-n 显示名称,而非id号

finger: 查看用户账号信息
finger USERNAME

修改用户账号属性:
usermod
-u UID
-g GID (GID必须存在)
-G(-a) 当不带-a时候,会覆盖此前的附加组
-c
-d(-m) 不适用-m, 旧的家目录文件将无法访问, -m将会复制到新的家目录
-s SHELL
-l 修改用户的login name
-L 锁定用户账号
-U 解锁用户账号

chsh: 修改用户的默认shell
chfn: 修改用户的注释信息

密码管理:
passwd [USERNAME]
--stdin
eg: echo "jingming" | passwd user4 --stdin
-l 锁定账号
-u 解锁账号
-d 删除用户密码
-n 设置密码最短使用期限

pwck: 检查用户账号的完整性

组管理:
创建组: groupadd
-g 指定GID
-r 添加为系统组(GID=1-499)
groupmod
-g GID
-n GRPNAME 组名

groupdel
gpasswd: 给组加密码

newgrp 登录当前用户的基本组为新的基本组,可以用gpasswd给组设置密码, 用exit退出

练习:
1、 创建一个用户mandriva, 其ID号为2002,基本组为distro(组ID为3003),附加组为linux:
groupadd distro -g 3003
groupadd linux
useradd -u 2002 -g distro -G linux mandriva
2、 创建一个用户fedora,其全名为Fedora Community, 默认shell为tcsh
useradd -s '/bin/tcsh' -c "Fedora Community" fedora
3、 修改mandriva的ID号为4004,基本组为linux,附加组为distro和fedora
usermod -u 4004 -g linux -G distro,fedora mandriva
4、 给fedora加密码,并设定其密码最短使用期限为2天,最长为50天
passwd -n 2 -x 50 fedora
5、 将mandriva的默认shell改为/bin/bash
usermod -s /bin/bash mandriva
6、 添加系统用户hbase,且不允许其登陆系统
useradd -r -s '/sbin/nologin' hbase

chage 改变用户密码过期信息
-d 最近一次的修改时间
-E: 过期时间:
-I: 非活动时间
-m 最短使用期限
-M 最长使用期限
-W 警告时间
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息