linux文件权限学习记录
1、Linux 的安全性
1.1/etc/passwd 文件
存放用户的登录名以及相关信息#cat / etc / passwd root: x: 0 : 0 : root: /root:/bin / bash
root 用户账户为系统管理员,UID 和 GID 都为 0,1-500 为系统用户,501-65535 为普通用户使用。
文件包含七个字段:用户名;密码;UID;GID;描述;HOME 目录;默认 SHELL。字段内容都可以用命令去修改
1.2/etc/shadow 文件
存放密码的文件,并提供更多的控制,只有 root 才能访问 / etc/shadow,每一个用户都存在对应的一条记录#cat / etc / shadow bin: *:15980 : 0 : 99999 : 7 : ::daemon: *:15980 : 0 : 99999 : 7 : ::
文件包含九个字段:用户名;加密后的密码;自上次修改密码过去的天数;多少天后才能修改密码;多少天后必须修改密码;过期前多少天提醒;密码过期后多少天禁用账户;账户禁用的日期;预留字段
1.3 添加新用户
/usr/bin/useradd 添加用户默认值存放在 / etc/default/useradd 中,-D 选项查看默认值[~]#useradd-D GROUP=100#GID为100的公共组HOME = /home #HOME存放于/home / username INACTIVE = -1 #用户密码过期后不会被禁用EXPIRE = #未设置过期日期SHELL = /bin/bash #默认SHELL SKEL = /etc/skel #系统将 / etc / skel下的文件复制到家目录中,提示符出现bash1.1时就是丢失家目录文件,可以复制过来CREATE_MAIL_SPOOL = yes #在mail目录下创建一个接收邮件的文件
useradd 命令行参数-c comment给新用户添加备注
-d home_dir指定家目录位置
-e expire_date用 YYYY-MM-DD 指定账户过期日期
-f inactive_days密码过期后多少天禁用账户,0 表示立即,1 表示禁用这个功能
-g group_name指定所属组名或 GID
-u uid为账户指定唯一 UID
-G group ...指定附加组
-m创建家目录
-k将 / etc/skel/* 复制到账户 HOME 目录,必须与 - m 一起使用
-M不创建 HOME 目录-n创建一个与登录名相同的新组
-r创建一个系统账户
-p passwd设置默认密码
-s shell设置默认 SHELL
useradd 修改默认值的参数-b default_home修改默认家目录
-e expiration_date修改默认过期时间
-f inactive修改默认密码到期到禁用的天数
-g group修改默认的祖名或 GID
-s shell修改默认 SHELL# useradd - D - s / bin / bash 修改默认SHEL
1.4 删除用户
userdel 用户名 只删除 / etc/passwd 中对应的用户信息
userdel -r 用户名 将家目录和 mail 目录一起删除。。慎用
1.5 修改用户
usermod
修改账户字段,常用 - c 修改备注,-e 修改过期日期,-g 修改登陆组,-l 修改登录名,-L 锁定账户不能修改和删除,-p 修改密码,-U 解锁
passwd 和 chpasswd
passwd username
chpasswd 从文件中读取用户密码对,并修改密码
chpasswd < user.txt
chsh 快速修改默认 SHELL,shell 必须使用全路径
chsh -s /bin/bash test
chfn 修改备注
chfn test
chage 设置用户有效期
-d 上次修改密码到现在的天数
-E 设置密码过期日期
-I 设置密码到期到锁定的天数
-m 修改密码之间最少天数
-W 密码过期前多久提示
2、使用 Linux 组
2.1/etc/group 文件
保存用户组信息[~]#cat/etc/grouproot:x:0:bin:x:1:bin,
daemon daemon:x:2:bin,
daemon sys:x:3:bin,
adm
组名:组密码:GID:属于改组的用户列表 五个字段
注意:当用户的 / etc/passwd 中指定用户组时,那么该用户不会作为改组成员出现在 / etc/group 中
2.2groupadd 创建新组
2.3 修改组
groupmod -g 修改已有组的 GID
-n 修改已有组的名字
3、文件权限[~]#ls-l total44-rw-------.1root root1149Oct1723:20anaconda-ks.cfg-rw-r--r--.1root root25830Oct1723:20install.log-rw-r--r--.1root root7345Oct1723:18install.log.syslog
第一个字符为文件类型:- 普通文件;d 目录;l 代表链接;c 字符设备;b 块设备;n 网络设备
后面三组 3 字符的编码对应属主:属组:其他用户 的读写权限,r 代表可读,w 可写,x 可执行
3.1 默认文件权限 umask[~]#umask0022
umak 比较复杂简单介绍,第一位为粘着位,后面为八进制,目录默认权限 777,普通文件默认 666
777 -022 就是创建目录的默认权限 755 创建普通文件的默认权限 644
4、改变权限
chmod 权限 file
两种形式:1、数字形式 r->4 w->2 x->1
chmod 777 file
2、字符表示 u 用户 g 组 o 其他 a 上述所有
+ 添加权限 - 删除权限 = 设置权限为
chmod a+x file 全面添加执行权限
改变所属关系
chown user:group file
chown user.group file
chown .group file
SUID SGID 需进一步了解
来源: http://www.bubuko.com/infodetail-1861720.html