Linux学习之账户、权限管理

权限:

Linux权限主要分为三类属主、属组和其他,分别有r、w、x三种属性

对于文件来说:

r:可读,可以使用类似cat的命令查看

w:可写,可以编辑或删除此文件

x:可执行,可以在命令提示符下当做命令提交给内核运行

对于目录来说:

r:可以对此目录执行ls以列出内部的文件

w:可以在此目录下创建文件

x:可以使用cd切换,也可以使用ls -l查看内部文件的详细属性信息

权限用二进制和8进制表示不同的类型

rwx 111 7

rw- 110 6

r-x 101 5

r-- 100 4

-wx 011 3

-w- 010 2

--x 001 1

--- 000 0



用户由UID表示,用户的信息存放在/etc/passwd,密码信息则记录在/etc/shadow

UID是系统识别用户的凭证,一般系统管理员的UID为0,1~499为系统用户(1~100为系统创建用户,101~499为用户手动建立),500~60000为普通用户

组也有GID,组信息存放在/etc/gpasswd中,密码则存放在/etc/gshadow中(组密码是为了用户临时切换基本组而需要的)

用户组类别:

私有组:创建用户时,如果没有为用户指定所属的组,系统会自动为用户创建一个与用户名相同的组

基本组:用户的默认组

附加组:默认组以外的其他组

/etc/passwd信息

1、用户名

2、密码:记录在/etc/shadow

3、UID

4、GID(基本组)

5、注释信息

6、家目录路径

7、用户的默认shell

/etc/shadow信息:

1、用户名

2、加密后的密码

对称加密:加密和解密是用同一个密码

公钥加密:每个密码都成对出现,一个公钥,一个私钥

单项加密:提取数据特征码,常用于数据完整性校验

蝴蝶效应(雪崩效应)

定长输出 MD5 128位SHA1 160位

3、最近一次修改密码的时间,从1970年1月1日到修改时间所经过的天数

4、密码最短使用期限,0代表无限制

5、密码最长使用期限  9999代表用户过期

6、提醒时间,离过期还有多长时间进行提醒

7、非活动时间,密码过期后多长时间内还可登录系统

8、过期时间

用户管理命令:

1、useradd:添加账户

-c 账号passwd的说明栏信息

-d 指定家目录

-e 账号过期日期 格式mm/dd/yy

-f 账号过期几天后永久停权 当为0时则立即停权,为-1时则关闭此功能,预设关闭

-g 指定默认组,此组必须存在

-G 指定附加组,

-m 如果不存在家目录则创建同-k使用,会复制/etc/skel内的数据到新建的用户家目录

-M 不创建用户家目录

-r 建立系统账号

-s 指定默认shell

-u 指定UID

2、userdel:删除用户

-r 同时删除用户家目录

3、id 查看用户账号属性信息

-Z 仅显示当前用户的安全环境

-g 仅显示有效的用户组ID

-G 显示所有组的ID

-n 显示组名而非数字,不与-ugG一起使用

-u 显示有效用户UID

-r 显示真实ID,与-ugG一起使用

4、usermod:修改用户信息

-c 更新使用者账号的注释信息

-d 更改家目录,可以使用-m,可以将就目录中的数据迁移过去

-e 修改账号过期日期 mm/dd/yy

-f 账号过期几日后永久停权

-g 更改新的基本组

-G 更改附加组,会替换所有以前的附加组,同-a一起使用,追加新的附加组,并非删除

-l 更改登录名

-s 更改默认shell

-u 更改UID,除在home中的文件UID会自动更改,其他文件不会自动更改,慎用

usermod不允许更改正在线上使用的账号,必须确认此user没在电脑上执行任何程序

5、finger:用户信息查看

-s

-l

6、chsh:更该用户shell

-s 指定shell

-l 显示/etc/shells中的shell列表

-u 显示帮助

-v 显示版本

7、chfn 更改finger信息

-f 真实姓名

-h 家庭电话

-o 办公室电话

-p 办公室号码

-u help

-v version

8、passwd;修改用户密码相关信息

-d 删除用户密码

-u 解锁账户

-l 锁定账户

--stdin 从一个输入读取密码

-e 设置密码过期时间

-n 设置密码最小使用期限

-x 设置密码最长使用期限

-w 设置警告天数

-i 设置过期几日永久停权

9、chage:更改密码相关信息

-m 密码可更改的最小天数,为0可随时更改

-M 密码保持最大的有效天数,

-W 用户密码到期前,提醒的天数

-E 账号过期日,过了这天将不能使用

-d 上一次更改的日期

-I 停滞时期,过了将不能使用

-l 列出当前的设置

10、chown:修改文件属主

chown USERNAME file

chown USERNAME:GROUPNAME file 同时更改属主和属组

chown USERNAME. GROUPNAME file 同上

-h 会影响符号链接本身,并非符号链接所指示的目的文件

-R 递归,将更改目录以及目录内部的所有文件属主

-v 为处理的所有文件显示诊断信息

--reference=/path/somefile file 将文件的所有者和群组设置和参考文件相同

11、chgrp:更改文件属组

-c 详细描述每个动作,实际上改变了那个组

-f 不列出错误信息

-R 递归修改 

-v 详细描述

--reference=/path/somefile file 将文件的群组设置和参考文件相同

12、chmod:修改文件属性

-R递归修改

--reference=/path/somefile file 将文件的所有者和群组设置和参考文件相同

操作对象:

u、g、o、a

权限设定:

+:增加权限

-:取消权限

=:唯一设定权限

权限类别:

r=4:读w=2:写x=1:执行

X:表示只有当该档案是个子目录或者改档案已经被设定过为可执行

l:给文件加锁,是其他用户无法访问

使用方法:

chmod 777 file

chmod u=rwx,go=rw file

chmod a=rw file

chmod u+x,g-x file

13、umask:设置新文件权限的掩码,当新文件被创建时,其最初的权限由文件创建掩码决定,用户每次进入系统时,umask命令会被执行,并自动设置掩码来改变默认值,

新的权限会将旧的覆盖

-S 以字符的形式显示当前掩码

-p 带umask开头,以数字的形式显示当前掩码

管理员umask为022,普通用户为002;使用的是反掩码

默认创建文件时将x权限拿掉,默认是666,目录则为777

管理员022默认创建文件时权限为644,目录为755

普通用户002创建文件默认属性为664,目录为775

使用umask 000可以修改默认权限,重启失效

umask是将权限拿走的相应位,且文件创建时不能赋予执行权限



14、SHELL的类型:

登录式shell

正常通过某终端登录

su -

su -l

非登陆式shell

su

图形终端下打开命令窗口

自动执行的shell脚本

15、bash的配置文件

全局配置

/etc/profile/etc/profile.d/*.sh/etc/bashrc

个人配置

~/.bash_profile~/.bashrc

profile类的文件:

设定环境变量

运行命令或脚本

bashrc类文件:

设定本地变量

定义命令别名

登陆式shell读取文件顺序

/etc/profile --> /etc/profile.d/*sh --> ~/.bash.profile --> ~/.bashrc --> /etc/bashrc

非登录式shell

~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh


本文出自 “杆儿男” 博客,请务必保留此出处http://wtime.blog.51cto.com/8829658/1530367

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。