普通用户也可以创建用户,2.rw必威手机官网-r-

Linux系统文件的权限,Linux系统文件权限

一.文件权限属性

(1) [root@pc root]# ls -l install.log

-rw-r--r-- 1 root root 26195 Dec 17 10:42 install.log

必威手机官网 1

image.png


(2) 文件属性操作

  • chown 设置文件的所有者:
    设置格式 'chown owner' 创建一个f1文件,它的所有者为root,通过chown 命令将f1 的所有者改为wangcai
![](https://upload-images.jianshu.io/upload_images/6851471-7f4609d274e58859.png)

image.png
  • chown也可以修改所属于组和所有者
    格式: chown owner:group file ——其中':'可以用'.'来代替,也可以':group file'只改变组
    创建一个f2文件,查看所有者和所属组,然后通过chown wangcai:sasles f2
    则将f2的属性改变

    必威手机官网 2

    image.png

chown -R 为递归: 'chown -R wang jerry/'
将jerry里的所有用户都改为wang用户

用户管理

 passwd -l username    ##锁定,会在/etc/shadow第二栏最前面加上!!,使密码失效
        -e             ##强制用户登陆时修改密码
        -u             ##unlock,解锁
        -S             ##列出密码相关参数
        -n             ##后面接天数,多久不可更改密码参数
        -x             ##多久内必须要更改密码
        -w             ##密码过期前的警告天数
        -i             ##非活跃天数

必威手机官网 3

Screenshot from 2018-01-21 20-37-14.png

必威手机官网 4

Screenshot from 2018-01-21 20-53-29.png

必威手机官网 5

Screenshot from 2018-01-21 21-03-55.png

必威手机官网 6

Screenshot from 2018-01-21 21-04-40.png

chage   -d 0    ##密码使用多久,如果设定为0表示用户登陆系统前必须更改密码
        -m      ##最短有效期
        -M      ##最长有效期
        -W      ##警告期
        -I      ##非活跃期
        -E      ##到期时间格式yyyy-mm-dd

/etc/shadow 存放用户认证信息:
信息格式:

用户:密码:最后一次密码修改时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日

必威手机官网 7

Screenshot from 2018-01-29 20-58-23.png

必威手机官网 8

Screenshot from 2018-01-29 21-35-16.png

一、USERS

UID为0的用户为管理员用户,任何一个UID为0的用户,都可为管理员用户
若系统没有了UID=0的管理员用户,则系统无法启动
用户ID:

管理员:root,UID为0
系统用户:UID为1-499,1-999,对守护进程获取资源进行权限分配
普通用户:UID为500-65535,1000-65535,交互式登录
创建用户时指定UID时,可指定UID>65535的UID,即UID可指定为70000

组(group)GID

管理员组:root GID为0
系统组:1-499,1-999(CENTOS7)
普通组:500-65535,1000-65535

liunx中,允许用户名和组名相同,windows中不允许用户和组同名

  • linux安全上下文:
    运行中的程序即进程,进程所能够访问资源的权限取决于进程的运行者的身份
  • linux组的类别:

用户的主要组:
用户必须属于一个且只有一个主组
组名同用户名,且仅包含一个用户
用户的附加组:
一个用户可以属于零个或多个辅助组

  • passwd文件格式:

login name:登录用名(danran)
passwd:密码位(X)
UID:用户身份编码(1000)
GID:登录默认所在组编号(1000)
GECOS:用户全名或注释即描述
home directory:用户主目录(/home/danran)
shell:用户默认使用shell(/bin/bash)

  • passwd配置文件格式描述:
    必威手机官网 9

name:passwd:UID:GID:GECOS:directory:shell

修改用户的属性信息也可直接修改/etc/passwd配置文件
如果删除用户的家目录,则在登录时会自动登录到/目录上,但不会禁止登录

  • shadow文件格式

1、登录用名
2、用户密码: 一般用sha512 加密,$6位sha512算法,$5位sha256算法,$1为md5加密
3、从1970 年1 月1 日起到密码最近一次被更改的时间,单位day
4、密码再过几天可以被变更(0 表示随时可被变更)
5、密码再过几天必须被变更(99999 表示永不过期)
6、密码过期前几天系统提醒用户(默认为一周)
7、密码过期几天后帐号会被锁定
8、从1970 年1 月1日算起,多少天账号失效

必威手机官网 10

  • !禁止用户登录

锁定用户时,禁止用户登录和切换,但root用户不受限制可以正常切换,空口令可以登录

  • 密码加密:

加密机制:

加密:明文--> 密文
解密:密文--> 明文

单向加密:哈希算法(散列算法),原文不同,密文必不同,密码数据一致,加密过后的结果也是一样的
哈希算法的特点:如果两个密码的数据一样,则加密处理后的结果也是一样的,因此用户密码在加密时又因为前面又加了一些随机的随机数,即加密过后第2个和第三个$$之间的数,因此口令跟随机数综合起来的结果也就不一致。加的随机数称之为salt(盐)

必威手机官网 11

如果知道确定的salt随机数,则使用openssl命令推算密码口令,相同的算法及相同的密码,算出来的加密口令不一致,但是指定salt数据,则推算出来的md5数据则是完全一致的

相同算法定长输出,获得密文不可逆推出原始数据
雪崩效应:初始条件的微小改变,引起结果的巨大改变
md5: message digest, 128bits
sha1: secure hash algorithm, 160bits
sha224: 224bits
sha256: 256bits
sha384: 384bits $5
sha512: 512bits $6

centos6加密算法为sha512,shadow文件中表示为$6,$1对应的加密算法是md5

必威手机官网 12

  • man authconfig | grep passwd 可查找支持更新的加密算法
    更改定义加密算法 authconfig --passalgo=sha256 -- update

  • 加密算法保存文件为 ==/etc/login.defs==

  • 口令有效期策略:

![](https://timgsa.baidu.com/timg?image&quality=80&size=b10000_10000&sec=1497800534&di=5fa16992512d68a8d04fd2d822d1f7d4&imgtype=jpg&src=http://b.hiphotos.baidu.com/image/pic/item/3b87e950352ac65ca99fce2af1f2b21192138ad5.jpg)
  • 密码复杂性策略

使用数字、大写字母、小写字母及特殊字符中至少3种
足够长
使用随机密码
定期更换, 不要使用最近曾经使用过的密码

  • group文件格式

群组名称:就是群组名称
群组密码:通常不需要设定,密码是被记录在/etc/gshadow
GID的 :就是群组的 ID
以当前组为附加组的用户列表( 分隔符为逗号)

  • gshadow文件格式

群组名称:就是群组名称
群组密码:
组管理员列表:组管理员的列表,更改组密码和成员
以当前组为附加组的用户列表:(分隔符为逗号)

  • 新建用户的相关配置文件模板和命令

vim /etc/default/useradd
/etc/skel/* 存放用户系统环境
/etc/login.defs 加密算法保存文件
newusers passwd 格式文件 批量创建用户
chpasswd 批量修改用户口令

  • 用户和组的配置文件

/etc/passwd:用户及其属性信息(名称、UID、主组ID等)
/etc/grup:组及其属性信息
/etc/shadow:用户密码及其相关属性
/etc/gshadow:组密码及其相关属性
/var/spool/mail:用户的邮件目录

  • 加密算法保存文件为 ==/etc/login.defs==

  • 命令:

    pwunconv:将用户密码从shadow文件中显示在passwd文件中,即取消密码映射,则/etc/shadow文件将自动消失
    pwconv:打开用户投影密码,将密码映射到/etc/shadow文件
    chfn 修改用户的描述信息
    finger:查看用户的描述信息(需安装finger*软件包)
    chfn danrna 修改danran用户描述信息
    finger danran 查看danran用户的描述信息
    chsh -s /bin/csh danran 修改danran用户的shell类型

  • 用户和组管理命令

用户管理命令
useradd
usermod
userdel
组帐号维护命令
groupadd
groupmod
groupdel

  • 用户创建useadd

      useradd [options] LOGIN     
          -u  UID :  [UID_MIN, UID_MAX] 定义在/etc/login.defs   
          -o  配合-u  选项,不检查UID 的唯一性,可使用重复的uid号   
          -g GID :指明用户所属基本组,可为组名,也可以GID   
          -c  "COMMENT" :用户的注释信息   
          -d  HOME_DIR: 以指定的路径( 不存在) 为家目录   
          -s  SHELL :  指明用户的默认shell 程序,可用列表在/etc/shells文件中   
          -G  GROUP1[,GROUP2,...] :为用户指明附加组,组须事先存在   
          -N  不创建私用组做主组,使用users 组做主组   
          -m:创建家目录   
          -M:不创建家目录   
          -r: 创建系统用户 CentOS 6: ID<500 ,CentOS 7: ID<1000   
              系统用户不自动创建家目录,也不会创建邮件目录,shell环境不一定
    

新建用户的默认值设定:/etc/default/useradd 文件中

显示或更改默认设置:
useradd -D
useradd –D -s SHELL
useradd –D –b BASE_DIR,更改默认家目录位置eg /app
useradd –D –g GROUP

  • 用户属性修改:

      usermod [OPTION] login
          -u UID:  新UID
          -g GID: 新主 组
          -G GROUP1[,GROUP2,...[,GROUPN]]] :新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用 -a 选项
          -a:附加不覆盖原来的组
          -s SHELL :新的默认SHELL
          -c 'COMMENT' :新的注释信息
          -d HOME:  新家目录不会自动创建;若要创建新家目录并移动原家数据,同时使用-m 选项
          -l login_name:  新的名字   eg usermod -l newtom tom
          -L: lock 指定用户, 在/etc/shadow 加密码栏的增加 !
          -U: unlock 指定用户,将 将 /etc/shadow 的 密码栏的 !  拿掉
          -e YYYY-MM-DD:  指明用户账号过期日期
          -f INACTIVE:  设定非活动期限
    
  • 查看用户的相关id信息

      id [OPTION]... [USER]
          -u:  显示UID
          -g:  显示GID
          -G:  显示用户所属的组的ID
          -n:  显示名称,需配合ugG 使用
    
  • 创建组

      groupadd [OPTION]... group_name
          -g GID:  指明GID 号;[GID_MIN, GID_MAX]
          -r:  创建系统组
              CentOS 6: ID<500
              CentOS 7: ID<1000
    
  • 修改和删除组

组属性修改:groupmod

groupmod [OPTION]... group

-n group_name: 新名字
-g GID: 新的GID
组删除:groupdel
groupdel GROUP

删除附加组

usermod -G "" tom 删除tom的附加组
gpasswd -d tom bin 将tom从bin附加组删除

  • 更改组密码:
    组密码:gpasswd

      gpasswd [OPTION] GROUP    
          -a user:  将user 添加至指定组中   
          -d user:  从指定组中移除用户user   
          -A user1,user2,...:  设置有管理权限的用户列表   
    
  • newgrp 命令:临时切换主组

如果用户本不属于此组,则需要组密码
newgrp danran 将自己的主组临时变为danran

  • 更改和查看组成员

      groupmems [options] [action]    
      options:
          -g, --group groupname 更改为指定组 ( 只有root)
      Actions:   
          -a, --add username 指定用户加入组   
          -d, --delete username 从组中删除用户   
          -p, --purge 从组中清除所有成员
          -l, --list 显示组成员列表
    

groups [OPTION].[USERNAME]... 查看用户所属组列表

必威手机官网 13

  • su切换用户

切换用户的方式:

su UserName :非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录
su - UserName :登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换

root su 至其他用户无须密码;非root 用户切换时需要密码

换个身份执行命令:

su [-] UserName -c 'COMMAND'

su - root 'cat /etc/shadow' 以root的身份执行cat命令

选项:-l --login

su -l UserName 于 相当于 su - UserName

  • 删除用户

userdel [OPTION]... login

-r: 删除用户 家目录

  • 设置密码

passwd [OPTIONS] UserName: 修改指定用户的密码,仅root 用户权限
passwd: 修改自己的密码

常用选项:     
    -l: 锁定指定用户   
    -u: 解锁指定用户
    -e: 强制用户下次登录修改密码   
    -n mindays:  指定最短使用期限   
    -x maxdays :最大使用期限   
    -w warndays :提前多少天开始警告   
    -i inactivedays :非活动期限   
    --stdin :从标准输入接收用户密码   

echo " PASSWORD " | passwd --stdin USERNAME

  • 修改用户密码策略
chage [OPTION]... LOGIN
    -d:最近一次修改时间
    -E:过期时间
    -I:非活动时间
    -m:最短使用期限
    -M:最长使用期限
    -W:警告时间
    –l 显示密码策略
        chage -l danran 列出用户口令策略的相关信息

示例:

chage -d 0 tom 下一次登录强制重设密码
chage -m 0 –M 42 –W 14 –I 7 tom
chage -E 2016-09-10 tom

  • change:更改账号口令策略
  • getent:查看文件的记录信息,只查看文件中某个用户的全部信息

getent passwd danran 查看passwd文件中danran用户的信息

必威手机官网 14

  • 将用户添加进组

Gpasswd +组名 修改组密码
Newgrp +用户 把该用户添加进组

gpasswd -a dan danran 将danran用户添加进dan组里

  • 修改用户和组命令使用
useradd 创建用户  eg  useradd danran(创建淡然用户)
groupadd 创建组
Userdel 删除用户
Groupdel 删除组
Passwd 修改用户密码
ghpasswd 批量修改用户口令
Gpasswd 修改组密码
Finger 用来简单的查看系统上的用户信息   eg finger rich
Useradd -c 描述信息 -d 指定家目录 -g 指定私有组 -G指定附加组 -s 指定shell环境    
    eg useradd -c       boss -d /user -u 1000 -G root -s /bin/bash
    -m:创建用户时,强制给用户创建目录
    -M:创建用户时,但不创建家目录
    -D:default,为useradd命令创建的用户指定新的默认值
Useradd -r 增加系统用户
Useradd -D 查看系统默认用户属性
Useradd -D -s /bin/tsch 修改系统默认用户的登录属性
Usermod 修改用户属性,参数同useradd一样,-
    -G GID:默认会覆盖原有的附加组,如果是添加,则同时使用-a选项
    -d /path/to/new_home:默认不会迁移用户的家目录,如果要迁移,则同时使用-m
    -l New_login_name:修改登录名称
Usermod -l 修改用户账号的登录名
Usermod -p 修改用户密码
usermod -s /bin/csh danran  修改用户的默认shell    
chsh -s /bin/bash danran   修改用户的默认shell   
Groupmod -g 修改GID   eg groupmod -g 2000 test
Groupmod -n 修改组名   eg groupmod -g test1 test
Passwd -e 强制用户下次登录时修改密码
Passwd -l 锁定用户
Passwd -u 解锁用户
    锁定用户时,禁止用户登录和切换,但root用户不受限制可以正常切换 
Passwd -d 删除用户密码
Userdel 删除用户及passwd、shadow、group、gshadow四个文件,保留用户名文件和电子邮件
Userdel -r 删除用户和用户的所有文件,包括用户名文件和电子邮件
groupmems -g danran -l   查看danran组里的其他成员,即显示以danran为附加组的用户
groupmems -g danran -d harry   将harry组从danran附加组里删除
gpasswd -d harry danran    从danran附加组中删除harry组
groups danran   列出danran用户的主组  
gpasswd danran  修改danran组的密码    
newgrp danran  将自己的主组临时变为danran    
    如果用户本身就属于danran附加组的成员,并shadow文件中记录了属于danran附加组,则不需要输入密码就可直接更换临时主组,但如果不属于附加组,则切换为danran主组需要输入danran组的密码    
gpasswd -a dan danran    将dan用户添加进danran组里      
    成员更改组成员关系后,用户必须重新登录才能获得最近更改的组成员关系

Chsh:修改用户默认shell
Chfn:修改注释信息
vipw:vim 编辑passwd文件
vigr:vim 编辑group文件
pwck:语法检查,检查用户文件格式
grpck:语法检查,检查组文件格式
newusers passwd     根据passwd格式文件批量创建用户

Linux云自动化运维第四课,linux云自动化

一、文件的属性

如上图,ls列出文件的基本属性,共有八部分,其中 1.-代表文件类型(具体-代表普通文件,如果是d代表目录;c代表字符设备;s代表套接字;p代表管道;b代表块设备;1代表链接) 2.rw-r--r--代表了文件的读写执行权限。红线隔开三个一组 |rw-|r--|r--|第一组表示所有人的权限,第二组表示所有组的权限;第三组表示其他人的权限 。r表示都的权限(查看);w表示写的权限(添加删除);x表示执行的权限(进入目录)。 3.“1”对文件:文件内容被系统记录的次数。         对目录:目录中文件属性的字节数。 4.root表示文件的所有人(文件是谁的) 5.root表示文件所有组(文件是哪个组的) 6.“0”表示文件内容大小 7.Jan 3 02:46表示文件最后一次被修改的时间 8.file表示文件的名字

注意: 普通用户无法执行 'chown'命令

  • chgrp 设置文件的属组信息
    格式: charg libai f2——将f2文件的所属组改为libai(前提libai这个组存在)
    charg -R:递归

权限下放,普通用户提权

vim /etc/sudoers或者 visudo

推荐用visudo编辑,实现权限下放,因为visudo会提示错误信息。

但是,visudo没有字体颜色......

默认情况下,普通用户是不能建立用户的,但是权限下放后,普通用户也可以创建用户:

必威手机官网 15

Screenshot from 2018-01-29 21-46-59.png

必威手机官网 16

Screenshot from 2018-01-29 21-53-19.png

Ubuntu下貌似就是这么实现权限管理的

NOPASSWD是为了运行命令时不用输入密码

如果还想实现删除用户,在后面加上 /usr/sbin/userdel,用逗号分隔开就可以了

二、文件权限

  • 文件权限
    必威手机官网 17
r(readable) w(writable) x(eXcuable) u(owner) g(group) o(other) a(all)
执行 所有者 所属组 其他人 所有人
4 2 1

用户访问文件,按照匹配顺序依次匹配,如果普通用户文件的所有者和所属组其中一个有执行权限,-o没有-x权限,尽管root用户不属于该文件所有者和所有组,root用户依然可以借用-X执行权限

  • 删除文件,跟文件本身的权限没有关系,而跟目录本身有关系,因为文件名存储在父目录结构块中,
  • 目录权限:

目录若只有读写权限,只能查看目录文件列表,不能访问文件和cd进目录(查看,删除),如果只有执行权限,可以cd进目录,但是不能ls列出文件列表,可以执行目录中的文件,执行是基础权限,若知道文件名,可以直接访问目录中的文件;写权限,需配合x权限才能生效,如果要删除目录下的文件,目录必须要有执行权限和写权限

文件:
    r:  可使用文件查看类工具获取其内容
    w:  可修改其内容
    x:  可以把此文件提请内核启动为一个进程
目录:
    r:  可以使用ls 查看此目录中文件列表
    w:  可在此目录中创建文件,也可删除此目录中的文件
    x:  可以使用ls -l 查看此目录中文件列表,可以cd 进入此目录
    X:递归修改目录执行权限时,只给所有的目录x 权限,而不给文件x执行权限,但是如果文件中有任何一个人有执行权限,则文件将会全部加上执行权限  
  • chmod 修改文件权限
chmod [OPTION]... OCTAL-MODE FILE...
    -R:  递归修改权限
chmod [OPTION]... MODE[,MODE]... FILE...
    MODE: 
        修改一类用户的所有权限:
        u= g= o= ug= a= u=,g=
    修改一类用户某位或某些位权限
        u+ u- g+ g- o+ o- a+ a- + -

chmod [OPTION]... --reference=RFILE FILE...  参考RFILE 文件的权限,将FILE 的修改为同RFILE

权限设置eg:

chgrp sales testfile
chown root:admins testfile
chmod u+wx,g-r,o=rx file
chmod -R g+rwX /testdir
chmod 600 file
chown mage testfile

若用户没有任何权限,则设置权限为空,赋值权限也可直接赋八进制数字

  • 八进制权限:
000 001 010 011 100 101 110 111
--- --x -w- -wx r-- r-x rw- rwx
0 1 2 3 4 5 6 7
640:rw- r-- --- 755:rwx r-x r-x 7:--- --- rwx 0:--- --- ---
  • 文件属性操作
    chown  设置文件的所有者   
chgrp  设置文件的属组信息   

修改文件的属组和属主

修改文件的属主:chown

chown [OPTION]... [OWNER][:[GROUP]] FILE...
    用法:
        命令中的冒号可用. 替换
        -R:  递归
        chown [OPTION]... --reference=RFILE FILE...
            eg:chown -R danran:danran qq
                chown -R danran.danran qq

修改文件的属组:chgrp

chgrp [OPTION]... GROUP FILE...
chgrp [OPTION]... --reference=RFILE FILE...
    -R  递归

用户属于某个附加组时,才能修改文件的属组为这个附加组
  • 新建文件或目录的默认权限

umask掩码:从777或666中,将文件对应的权限位去掉,从而得出默认权限
umask值:可以用来保留在创建文件权限
新建FILE 权限: 666-umask

如果所得结果某位存在执行(奇数)权限,则将其权限+1

  • umask值计算权限
    必威手机官网 18

新建DIR 权限: 777-umask
非特权用户umask是002

root 的umask是022
umask: 查看umask值
umask #: 设定umask值

umask 002

umask –S 模式方式显示

必威手机官网 19


umask –p 输出可被调用

必威手机官网 20

  • umask全局设置: /etc/bashrc umask用户设置:~/.bashrc

Linux云自动化运维第四课

一、vim

 

1.vim光标移动

1)在命令模式下

:数字  ###移动到指定的行

G  ###文件最后一行

gg  ###文件第一行

2)在插入模式下

i  ###光标所在位置插入

I  ###光标所在行行首

a  ###光标所在字符的下一个位置

A  ###光标所在行行尾

o  ###光标所在行下一行

O  ###光标所在行上一行

s  ###删除光标所在字符插入

S  ###删除光标所在行插入

 

2.vim的退出模式

:q  ###当用vim打开文件但没有对字符作任何操作时可直接退出

:q!  ###当用vim打开文件并对字符作操作,放弃所有操作退出

:wq  ###保存退出

:wq!  ###强行保存退出,对超级用户及文件所有人生效

 

3.vim手册

vimtutor  ###vim的手册

:q  ###退出vimtutor

 

二、gedit

 

ctrl+n  ###在gedit中打开一个新的tab

ctrl+s ###保存文件

ctrl+o ###打开文件

ctrl+x ###剪切字符

ctrl+v ###粘贴字符

ctrl+c ###复制字符

yelp help:gedit  ###gedit的图形手册

 

三、用户理解

 

限制,共享

用户就是系统使用者的身份

在系统中用户存储为若干字符串+若干个系统配置文件

用户信息涉及到的系统配置文件:

/etc/passwd ###用户信息

用户:密码:uid:gid:说明:家目录:用户使用的shell

/etc/shadow ###用户认证信息

用户:密码:最后一次密码修改该时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日

/etc/group ###组信息

组名称:组密码:组id:附加组成员

/etc/gshadow ###组认证信息

/home/username ###用户家目录

/etc/skel/.* ###用户骨架文件

 

四、用户管理

 

1.用户建立

useradd 参数 用户名称

-u ###指定用户uid

-g ###指定用户初始组信息,这个组必须已经存在

-G ###指定附加组,这个组必须存在

-c ###用户说明

-d ###用户家目录

-s ###用户所使用的shell,/etc/shells记录了用户能使用shell的名字

eg:[[email protected] Desktop]# useradd westos  ###建立新用户,参数皆为默认

[[email protected] Desktop]# useradd -u 6666 westos  ###建立新用户,指定用户uid为6666

[[email protected] Desktop]# groupadd -g 9999 westo  ###建立组,指定组gid为9999

[[email protected] Desktop]# useradd -g 9999 westos  ###建立新用户,指定组gid为9999

[[email protected] Desktop]# useradd -G 21 westos  ###建立新用户,指定附加组id为21

[[email protected] Desktop]# useradd -c "westos user" westos  ###建立新用户,指定用户说明为westos user

[[email protected] Desktop]# useradd -d /home/linux westos  ###建立新用户,指定用户家目录为/home/linux/

[[email protected] Desktop]# useradd -s /bin/sh westos  ###建立新用户,指定用户所使用的shell

ps:[[email protected] Desktop]# userdel -r westos  ###删除用户westos,新建用户存在时,先删除用户,再新建

 

2.用户删除

userdel -r 用户名称  ###-r表示删除用户信息及用户的系统配置

eg:[[email protected] Desktop]# userdel -r westos  ###删除westos用户信息及其westos的系统配置

 

3.组的建立

groupadd -g 组名称 ###建立组

groupdel 组名字  ###删除组

ps:做以上实验的监控命令:

[[email protected] Desktop]# watch -n 1 'tail -n 3 /etc/passwd /etc/group;echo ====;ls -l /home;echo ===;ls -l /mnt'

eg:[[email protected] Desktop]# groupadd linux  ###建立组linux,参数皆为默认

[[email protected] Desktop]# groupadd -g 8888 westos  ###建立名称为westos,id为8888的组

[[email protected] Desktop]# groupdel westos  ###删除组westos

 

4.用户id信息查看

id 参数 用户

-u ###用户uid

-g ###用户初始组id

-G ###用户所有所在组id

-n ###显示名称而不是id数字

-a ###显示所有信息

eg:[[email protected] Desktop]# id -a westos  ###查看westos的所有信息

[[email protected] Desktop]# id -u westos  ###查看westos的用户uid

[[email protected] Desktop]# id -g westos  ###查看westos的用户初始组gid

[[email protected] Desktop]# id -G westos  ###查看westos所有所在组id

[[email protected] Desktop]# id -un westos  ###查看westos的用户名称

[[email protected] Desktop]# id -gn westos  ###查看westos的初始组名称

[[email protected] Desktop]# id -Gn westos  ###查看westos的所有所在组的名称

 

5.用户信息更改

usermod 参数 用户

-l ###更改用户名称

-u ###更改uid

-g ###更改gid

-G ###更改附加组

-aG ###添加附加组

-c ###更改说明

-d ###更改家目录指定及家目录名称

-s ###更改shell

-L ###冻结帐号

-U ###解锁

eg:[[email protected] Desktop]# usermod -l linux westos  ###将用户名称westos改为linux

[[email protected] Desktop]# usermod -u 1111 linux  ###将用户uid改为1111

[[email protected] Desktop]# usermod -g 72 linux  ###更改用户组id,组id要已存在的

[[email protected] Desktop]# usermod -G wheel linux  ###更改用户的附加组为wheel,wheel要已存在

[[email protected] Desktop]# usermod -aG 21 linux  ###在原有附加组的基础上,添加id为21的附加组

[[email protected] Desktop]# usermod -c "linux user" linux  ###更改linux用户的说明

[[email protected] Desktop]# usermod -d /home/linux linux  ###更改linux用户家目录指定

[[email protected] Desktop]# usermod -md /home/linux linux  ###更改linux用户家目录指定及家目录名称

[[email protected] Desktop]# usermod -s /bin/shell  ###更改shell

 

五、用户权力下放

 

1.在系统中超级用户可以下放普通用户不能执行的操作给普通用户

下放权力配置文件:/etc/sudoers

 

2.下放权力的方法

*)超级用户执行visudo进入编辑/etc/sudoers模式

*)格式:

获得权限用户 主机名称=(获得到的用户身份) 命令

test desktop0.example.com=(root) /usr/sbin/useradd

test用户能在desktop0.example.com以超级用户身份执行/usr/sbin/useradd

eg:[[email protected] Desktop]# visudo-->进入/etc/sudoers编辑模式-->kiosk foundation42.ilt.example.com=(root) /usr/sbin/useradd-->保存退出

 

3.执行下放权限命令

sudo 命令  ###如果第一次执行sudo需要输入当前用户密码

ps:在/etc/sudoers中如果设置如下:kiosk foundation42.ilt.example.com=(root) NOPASSWD: /usr/sbin/useradd,表示用户调用sudo命令的时候不需要自己密码

eg:[[email protected] Desktop]$ sudo /usr/sbin/useradd linux  ###执行下放权限命令

 

六、用户认证信息的控制

 

chage 参数 用户

-d      ###用户密码组后一次修改的时间,如果设定成0,用户登陆系统后必须修改自己的密码

-m ###最短有效期

-M ###最长有效期

-W ###警告期

-I ###用户非活跃天数

-E ###帐号到期日格式 -E "YYYY-MM-DD"

eg:[[email protected] Desktop]# watch -n 1 tail -n 5 /etc/shadow  ###实时监控密码信息变化

[[email protected] Desktop]# chage -d 0 student  ###用户登陆系统后必须修改自己的密码

[[email protected] Desktop]# chage -m 1 student  ###最短有效期为1天,至少1天后才能修改密码

[[email protected] Desktop]# chage -M 30 student  ###最长有效期为30天,必须在30天内修改密码

[[email protected] Desktop]# chage -W 2 student  ###警告期2天,密码到期的前2天,系统发出警告,提醒修改密码

[[email protected] Desktop]# chage -I 1 student  ###用户非活跃天数1天,30天之后多给1天,如果还没修改密码,系统直接冻结账户

[[email protected] Desktop]# chage -E "2017-04-21" student  ###设定账户到期格式

 

七、文件属性的查看

 

ls -l filename

-|rw-r--r--.|1| root| root|   46 |Oct  1 05:03 |filename

— —————————  —  ————  ————    ——  ————————————  ————————

1    2      3    4      5      6      7             8

 

1."-":文件类型

-  ###普通文件

d  ###目录

c  ###字符设备

s  ###套接字

p  ###管道

b  ###快设备

l  ###连接

eg:[[email protected] Desktop]$ ls -l /etc/passwd

-rw-r--r--. 1 root root 2270 Mar 20 00:45 /etc/passwd  ###普通文件

[[email protected] Desktop]$ ls -ld /etc/

drwxr-xr-x. 134 root root 8192 Mar 23 09:04 /etc/  ###目录

 

2."rw-r--r--":文件读写权限

rw-|r--|r--

 u   g   o

 

u:所有人的权限

g:所有组的权限

o:其他人的权限

 

3."1":

对文件:文件内容被系统记录的次数

对目录:目录中文件属性的字节数

eg:[[email protected] Desktop]$ ls -l /etc/passwd

-rw-r--r--. 1 root root 2270 Mar 20 00:45 /etc/passwd  ###文件内容被系统记录1次,1次可删除

[[email protected] Desktop]$ ls -ld /etc/

drwxr-xr-x. 134 root root 8192 Mar 23 09:04 /etc/  ###/etc目录中文件属性的字节数

 

4."root":文件所有人

eg:[[email protected] Desktop]$ ls -l file

-rw-rw-r-- 1 kiosk kiosk 0 Mar 23 10:12 file  ###文件所有人是用户kiosk

 

5."root":文件所有组

eg:[[email protected] Desktop]$ ls -l file

-rw-rw-r-- 1 kiosk kiosk 0 Mar 23 10:12 file  ###文件所有组是组kiosk

 

6."46":文件内容的大小

eg:[[email protected] Desktop]$ ls -l file

-rw-rw-r-- 1 kiosk kiosk 0 Mar 23 10:12 file  ###文件是空文件,文件内容大小为0

 

7."Oct  1 05:03":文件最后一次被修改的时间

eg:[[email protected] Desktop]$ ls -l file

-rw-rw-r-- 1 kiosk kiosk 0 Mar 23 10:12 file  ###文件最后一次修改时间是03-23 10:12

 

8."filename":文件名字

eg:[[email protected] Desktop]$ ls -l file

-rw-rw-r-- 1 kiosk kiosk 0 Mar 23 10:12 file  ###文件名称为file

 

八、文件所有人所有组的管理

 

chown  username file|dir ###更改文件的所有人

chown  username:groupname file|dir ###更改所有人所有组

chown -R username dir ###更改目录本身及里面所有内容的所有人

chgrp -R groupname dir ###更改目录本身及里面所有内容的所有组

 

eg:[[email protected] Desktop]# watch -n 1 ls -lR /mnt  ###实时监控/mnt中文件和目录的信息变化

[[email protected] Desktop]# chown student /mnt/file  ###将file文件的所有人更改为student

[[email protected] Desktop]# chown student.wheel /mnt/dir ###将dir目录的所有人更改为student,所有组更改为wheel

[[email protected] Desktop]# chown student:wheel /mnt/dir  ###和上条命令效果相同

[[email protected] Desktop]# chown -R student /mnt/dir  ###更改dir目录本身及里面所有内容的所有人为student

[[email protected] Desktop]# chgrp -R wheel /mnt/dir  ###更改dir目录本身及里面所有内容的所有组为wheel

 

九、文件普通权限

 

rw-|r--|r--

 u   g   o

u:文件所有人对文件可以读写

g:文件组成员对文件可读

o:其他人对文件可读

u优先匹配,g次优先,o当u,g不匹配时匹配

 

1.r

对文件:可以查看文件中的字符

对目录:可以查看目录中文件的信息

 

2.w

对文件:可以更改文件内字符

对目录:可以在目录中添加删除文件

 

3.x

对文件:可以运行文件内记录的程序动作

对目录:可以进入目录中

 

4.字符方式修改该文件权限

chmod [-R] <u|g|o><+|-|=><r|w|x> file|dir

chmod u-x file1 ###file1拥有者去掉x权限

chmod g+w file1 ###file1拥有组添加w权限

chmod u-x,g+w file1 ###file1拥有者去掉x权,file1拥有组添加w权限

chmod ugo-r file2 ###file2的用户组其他人去掉r权限

chmod ug+x,o-r file3 ###file3用户和组添加x权限,其他人去掉r权限

 

eg:[[email protected] Desktop]# watch -n 1 ls -lR /mnt  ###实时监控/mnt中文件和目录的信息变化

[[email protected] Desktop]# chmod u-x /mnt/dir  ###dir拥有着student去掉x权限,切换到student用户,无法进入目录

[[email protected] Desktop]# chmod g+w /mnt/dir  ###dir拥有组wheel添加w权限,wheel组内其他用户拥有在dir目录内添加删除文件的权力

[[email protected] Desktop]# chmod u-x,g+w /mnt/dir  ###和上两条命令效果相同

[[email protected] Desktop]# chmod ugo-r /mnt/dir  ###给dir目录的拥有者,用户组和其他人都去掉r权限,无法查看目录中文件的信息

[[email protected] Desktop]# chmod ug+x,o-r /mnt/dir  ###dir目录的拥有者和用户组添加x权限,拥有者和用户组可进入目录,其他人去掉r权限,无法查看目录中文件的信息

 

5.数字方式修改该文件权限

在linux中:r=4,w=2,x=1

文件权限数字表示方式

rw-|r--|r--

 u   g   o

u=rw-=4+2+0=6

g=r--=4+0+0=4

o=r--=4+0+0=4

所以文件权限表示为644

7=rwx,6=rw-,5=r-x,4=r--,3=-wx,2=-w-,1=--x,0=---

eg:[[email protected] Desktop]# chmod 640 /mnt/file  ###file文件的拥有者对其可读可写,所有组对其可读,其他人对其什么也没法干

 

十、系统默认权限的设定

 

从系统存在角度来说,开放权力越大,系统存在意义越高

从系统安全角度来说,开放权力越少,系统安全性越高

所以系统设定新建文件或目录会去掉一些权限

设定方式

umask ###查看系统保留权限默认为022

umask 077 ###修改该系统保留权限为077,此设定为临时设定,只当前shell中生效

 

永久设定方式:

vim /etc/bashrc ###shell,进入编辑

 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

     umask 002 ###普通用户umask

 else

     umask 077       ###超级用户umask,修改为077

 fi

vim /etc/profile ###系统,进入编辑

 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

     umask 002 ###普通用户umask

 else

     umask 077    ###超级用户umask,修改为077

 fi

 

以上两个文件umask设定值必须保持一致

source /etc/bashrc

source /etc/profile

让设定立即生效

ps:修改umask之前,新建文件默认参数为644,拥有者可读可写,所有组和其他人仅可读。修改参数后,变为600,仅拥有者可读可写,所有组和其他人没有任何权限

 

十一、特殊权限

 

1.suid ###冒险位

只针对二进制可执行文件,

文件内记录的程序产生的进程的所有人为文件所有人

和进程发起人身份无关

 

设定方式:

chmod u+s file

suid=4

chmod 4xxx file

 

2.sgid ###强制位

对文件:只针对二进制可执行文件,

任何人运行二进制文件

程序时程序产生的进程的所有组都是文件的所有组

和程序发起人组的身份无关

对目录:当目录有sgid权限后,目录中新建的所有文件的所有组

都自动归属到目录的所有组之中,和文件建立者所在的组无关

 

设定方式:

 

chmod g+s file|dir

sgid=2

chmod 2xxx file|dir

 

3.sticky ###粘制位

t权限:

只针对与目录,当一个目录上有t权限,那么目录中的文件只能被所有人删除

 

设定方式:

chmod o+t direcotry

t=1

chmod 1777 direcotry

 

 

本文由必威发布于必威-运维,转载请注明出处:普通用户也可以创建用户,2.rw必威手机官网-r-

相关阅读