shell命令之---Linux文件权限
本章内容
理解Linux的安全性
解读文件权限
使用Linux组
1、Linux的安全性---/etc/passwd文件
# cat /etc/passwd root:x:0:0:root:/root:/bin/bash /etc/passwd文件的字段包含了如下信息: 登录用户名 用户密码 用户账户的UID(数字形式) 用户账户的组ID(GID)(数字形式) 用户账户的文本描述(称为备注字段) 用户HOME目录的位置 用户的默认shell
2、Linux的安全性---/etc/shadow文件
/etc/shadow文件为系统上的每个用户账户都保存了一条记录。记录就像下面这样: rich:$1$.FfcK0ns$f1UgiyHQ25wrB/hykCn020:11627:0:99999:7::: 在/etc/shadow文件的每条记录中都有9个字段: 与/etc/passwd文件中的登录名字段对应的登录名 加密后的密码 自上次修改密码后过去的天数密码(自1970年1月1日开始计算) 多少天后才能更改密码 多少天后必须更改密码 密码过期前提前多少天提醒用户更改密码 密码过期后多少天禁用用户账户 用户账户被禁用的日期(用自1970年1月1日到当天的天数表示) 预留字段给将来使用
3、添加新用户
用来向Linux系统添加新用户的主要工具是useradd。这个命令简单快捷,可以一次性创建新用户账户及设置用户HOME目录结构。 useradd命令使用系统的默认值以及命令行参数来设置用户账户。系统默认值被设置在/etc/default/useradd文件中。可以使用加入了-D选项的useradd命令查看所用Linux系统中的这些默认值。
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
# /usr/sbin/useradd -D GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel CREATE_MAIL_SPOOL=yes #
在创建新用户时,如果你不在命令行中指定具体的值, useradd命令就会使用-D选项所显示的那些默认值。这个例子列出的默认值如下:
新用户会被添加到GID为100的公共组;
新用户的HOME目录将会位于/home/loginname;
新用户账户密码在过期后不会被禁用;
新用户账户未被设置过期日期;
新用户账户将bash shell作为默认shell;
系统会将/etc/skel目录下的内容复制到用户的HOME目录下;
系统为该用户账户在mail目录下创建一个用于接收邮件的文件。
倒数第二个值很有意思。 useradd命令允许管理员创建一份默认的HOME目录配置,然后把它作为创建新用户HOME目录的模板。这样就能自动在每个新用户的HOME目录里放置默认的系统文件。
useradd命令行参数
参数 描述
-c comment 给新用户添加备注
-d home_dir 为主目录指定一个名字(如果不想用登录名作为主目录名的话)
-e expire_date 用YYYY-MM-DD格式指定一个账户过期的日期
-f inactive_days 指定这个账户密码过期后多少天这个账户被禁用; 0表示密码一过期就立即禁用, 1表示禁用这个功能
-g initial_group 指定用户登录组的GID或组名
-G group ... 指定用户除登录组之外所属的一个或多个附加组
-k 必须和-m一起使用,将/etc/skel目录的内容复制到用户的HOME目录
-m 创建用户的HOME目录
-M 不创建用户的HOME目录(当默认设置里要求创建时才使用这个选项)
-n 创建一个与用户登录名同名的新组
-r 创建系统账户
-p passwd 为用户账户指定默认密码
-s shell 指定默认的登录shell
-u uid 为账户指定唯一的UID
