Linux-用户及用户权限详解
2015-01-29 13:14
246 查看
用户、组、权限
权限:r,w,x
文件:
r:可读,可以使用类似cat等命令查看文件内容
w:可读,可以编辑或删除此文件
x:可执行,可以命令提示符下当做命令提交给内核执行
目录:
r:可以对此目录执行ls以列出内部的所有文件
w:可以在此目录中创建文件
x:可以使用cd切换进此目录,也可以使用ls -l查看内部文件的详细信息
用户:UID,/etc/passwd
组:GID,/etc/group
passwd用户都可以看到,不是很危险?
影子口令,密码实际保存在/etc/shadow
组也是有密码的,在/etc/gshadow
用户类别:
1、管理员 UID=0
2、普通用户 UID=1-65535
a)、系统用户 1-499,一般用于某一类服务,一般不允许登陆
b)、一般用户 500-60000,后面就很少用了
用户组类别:
管理员组:
普通组:
系统组:
一般组:
用户组类别:
私有组:我们在创建用户时,如果没有指定所属的组,那么系统会为其自动创建一个与用户名同名的组。
基本组:用户的默认组
附加组(额外组),默认组以外的其他组
进程:tom tom
对象:rwxrw-r-- jerry tom a.txt
若tom不是属主
若tom不是tom组
则是other
/etc/passwd,:之间的含义?
whatis passwd
man 5 passwd
可以得知:
account:登录名
password:密码
UID:
GID:
comment:注释
HOME DIR:家目录
SHELL:用户默认shell
/etc/shadow
account:登录名
encrypted password:加密的密码(密码若是双!,则是锁定不可登陆)
加密方法:
对称加密:加密和解密使用同一个密码
公钥加密:每个密码都成对出现,一个为私钥,一个为公钥(速度慢)
单向加密(散列加密):提取数据特征码,可以由明文得到密文,但是不可以反过来,可以用来做
数据完整性校验。
1、不可逆
2、雪崩效应
3、定长输出
常用的单向加密算法:
MD5:Message Digest,128位的定长输出
SHA1:Secure Hash Algorithm,160位定长输出
添加用户
useradd USERNAME
修改用户的密码
passwd USERNAME
添加后,可以查看/etc/passwd,/etc/shadow
添加用户后,会自动的指定组、存在时间等属性,这些属性都保存在
/etc/default/useradd这个文本文件中,我们可以设置相应的值,比如过期时间的。
添加组
groupadd GRPNAME
/etc/group
用户管理:
useradd,userdel,usermod,passwd,chsh,chfn,finger,id,chage\
useradd [options] USERNAME
-u UID
-g GID(基本组)
-G GID,...(附加组)
-d path 指定其家目录
-s 指定shell路径
useradd -s /sbin/nologin user5 -->无法登陆
注:不知道有哪些shell,可以查看/etc/shells
-m -k(一般两者结合使用,-k不能单独使用)
-M 不创建家目录
-r 添加一个系统用户(UID 1-499,系统用户通常不能登陆系统,没有家目录)
/etc/login.defs
环境变量SHELL:用于保存当前用户默认shell
id USERNAME ->查询用户的UID GID等信息
finger USERNAME,查询用户账号的相关信息
userdel [option] USERNAME
-r:同时删除用户的家目录
usermod :修改用户账号属性
-u UID
-g GID
-a -G GID,加了a就不覆盖附加组,而是追加
-d -m:既指定新的家目录的位置,又将此前的文件移动过去
-l 更改登陆名
-e 指定过期时间
-L 锁定账号,不能登陆
-U 解锁
chfn USERNAME 修改用户的注释信息
chsh USERNAME 修改用户的默认shell
密码管理:
passwd [USERNAME]
--stdin
eg:echo "test" | passwd --stdin test
-l 锁定用户
-u 解锁
-d 删除用户密码
pwck,检查用户账号的完整性
chage:改变密码的各种时间属性
-d:最近一次的修改时间
-E:过期时间
-I:非活动时间
-m:最短使用期限
-M:最长使用期限
-W:警告时间
组管理:
groupadd,groupdel,groupmod,gpasswd
groupadd
-g GID
-r:添加为系统组
groupmod
-g GID
-n GRPNAME
groupdel
gpasswd:为组设定密码,组是不用来登陆系统的,是为了“更改”属组(这个属组是登陆属性,可以退出)
newgrp GRPNAME(newgrp类似login,不是修改组)
练习题:
权限管理:
chown,chgrp,chmod
chown:改变文件属主(只有管理员可以使用此命令)
格式:chown USERNAME file,...
-R:修改目录及其内部文件的属主
--reference=/path/to/somefile file,.. 设置成与参考文件相同的属性
特殊用法:
chown [USERNAME]:GRPNAME file,...
chgrp GRPNAME file,...
-R
--reference
chmod:修改文件的权限
chmod MODE file,...
-R
--reference
修改某类用户或某些类用户权限:
u,g,o,a
chmod 用户类别=MODE file,...
eg:
chmod u=rwx /tmp/abc
chmod g=r,o=r /tmp/abc
chmod go=r /tmp/abc
chmod g=r,o= /tmp/abc
chmod a=r /tmp/abc
修改某些用户的某位或某些位权限
chmod 用户类别+|-MODE file,...
chmod u-x /tmp/abc
eg:
openssl passwd -1 -salt '12345678'
可以帮助我们自动生成一个密码
练习手动添加一个用户?
umask:遮罩码
文件:666-umask
目录:777-umask
若umask:023
文件:666-023=643+1 =644
目录:777-023=754
文件默认不能具有执行权限,如果算得的结果中有执行权限,则将其权限+1
站在用户登录的角度来说,SHELL的类型:
登录式shell:
正常通常某终端登录
su - USERNAME
su -l USERNAME
非登录式shell:
su USERNAME
图形终端下打开命令窗口
自动执行的shell脚本
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/basrc --> /etc/profile.d/*.sh
权限:r,w,x
文件:
r:可读,可以使用类似cat等命令查看文件内容
w:可读,可以编辑或删除此文件
x:可执行,可以命令提示符下当做命令提交给内核执行
目录:
r:可以对此目录执行ls以列出内部的所有文件
w:可以在此目录中创建文件
x:可以使用cd切换进此目录,也可以使用ls -l查看内部文件的详细信息
用户:UID,/etc/passwd
组:GID,/etc/group
passwd用户都可以看到,不是很危险?
影子口令,密码实际保存在/etc/shadow
组也是有密码的,在/etc/gshadow
用户类别:
1、管理员 UID=0
2、普通用户 UID=1-65535
a)、系统用户 1-499,一般用于某一类服务,一般不允许登陆
b)、一般用户 500-60000,后面就很少用了
用户组类别:
管理员组:
普通组:
系统组:
一般组:
用户组类别:
私有组:我们在创建用户时,如果没有指定所属的组,那么系统会为其自动创建一个与用户名同名的组。
基本组:用户的默认组
附加组(额外组),默认组以外的其他组
进程:tom tom
对象:rwxrw-r-- jerry tom a.txt
若tom不是属主
若tom不是tom组
则是other
/etc/passwd,:之间的含义?
whatis passwd
man 5 passwd
可以得知:
account:登录名
password:密码
UID:
GID:
comment:注释
HOME DIR:家目录
SHELL:用户默认shell
/etc/shadow
account:登录名
encrypted password:加密的密码(密码若是双!,则是锁定不可登陆)
加密方法:
对称加密:加密和解密使用同一个密码
公钥加密:每个密码都成对出现,一个为私钥,一个为公钥(速度慢)
单向加密(散列加密):提取数据特征码,可以由明文得到密文,但是不可以反过来,可以用来做
数据完整性校验。
1、不可逆
2、雪崩效应
3、定长输出
常用的单向加密算法:
MD5:Message Digest,128位的定长输出
SHA1:Secure Hash Algorithm,160位定长输出
添加用户
useradd USERNAME
修改用户的密码
passwd USERNAME
添加后,可以查看/etc/passwd,/etc/shadow
添加用户后,会自动的指定组、存在时间等属性,这些属性都保存在
/etc/default/useradd这个文本文件中,我们可以设置相应的值,比如过期时间的。
添加组
groupadd GRPNAME
/etc/group
用户管理:
useradd,userdel,usermod,passwd,chsh,chfn,finger,id,chage\
useradd [options] USERNAME
-u UID
-g GID(基本组)
-G GID,...(附加组)
-d path 指定其家目录
-s 指定shell路径
useradd -s /sbin/nologin user5 -->无法登陆
注:不知道有哪些shell,可以查看/etc/shells
-m -k(一般两者结合使用,-k不能单独使用)
-M 不创建家目录
-r 添加一个系统用户(UID 1-499,系统用户通常不能登陆系统,没有家目录)
/etc/login.defs
环境变量SHELL:用于保存当前用户默认shell
id USERNAME ->查询用户的UID GID等信息
finger USERNAME,查询用户账号的相关信息
userdel [option] USERNAME
-r:同时删除用户的家目录
usermod :修改用户账号属性
-u UID
-g GID
-a -G GID,加了a就不覆盖附加组,而是追加
-d -m:既指定新的家目录的位置,又将此前的文件移动过去
-l 更改登陆名
-e 指定过期时间
-L 锁定账号,不能登陆
-U 解锁
chfn USERNAME 修改用户的注释信息
chsh USERNAME 修改用户的默认shell
密码管理:
passwd [USERNAME]
--stdin
eg:echo "test" | passwd --stdin test
-l 锁定用户
-u 解锁
-d 删除用户密码
pwck,检查用户账号的完整性
chage:改变密码的各种时间属性
-d:最近一次的修改时间
-E:过期时间
-I:非活动时间
-m:最短使用期限
-M:最长使用期限
-W:警告时间
组管理:
groupadd,groupdel,groupmod,gpasswd
groupadd
-g GID
-r:添加为系统组
groupmod
-g GID
-n GRPNAME
groupdel
gpasswd:为组设定密码,组是不用来登陆系统的,是为了“更改”属组(这个属组是登陆属性,可以退出)
newgrp GRPNAME(newgrp类似login,不是修改组)
练习题:
权限管理:
chown,chgrp,chmod
chown:改变文件属主(只有管理员可以使用此命令)
格式:chown USERNAME file,...
-R:修改目录及其内部文件的属主
--reference=/path/to/somefile file,.. 设置成与参考文件相同的属性
特殊用法:
chown [USERNAME]:GRPNAME file,...
chgrp GRPNAME file,...
-R
--reference
chmod:修改文件的权限
chmod MODE file,...
-R
--reference
修改某类用户或某些类用户权限:
u,g,o,a
chmod 用户类别=MODE file,...
eg:
chmod u=rwx /tmp/abc
chmod g=r,o=r /tmp/abc
chmod go=r /tmp/abc
chmod g=r,o= /tmp/abc
chmod a=r /tmp/abc
修改某些用户的某位或某些位权限
chmod 用户类别+|-MODE file,...
chmod u-x /tmp/abc
eg:
openssl passwd -1 -salt '12345678'
可以帮助我们自动生成一个密码
练习手动添加一个用户?
umask:遮罩码
文件:666-umask
目录:777-umask
若umask:023
文件:666-023=643+1 =644
目录:777-023=754
文件默认不能具有执行权限,如果算得的结果中有执行权限,则将其权限+1
站在用户登录的角度来说,SHELL的类型:
登录式shell:
正常通常某终端登录
su - USERNAME
su -l USERNAME
非登录式shell:
su USERNAME
图形终端下打开命令窗口
自动执行的shell脚本
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/basrc --> /etc/profile.d/*.sh
相关文章推荐
- linux下oracle用户、权限与角色管理详解
- Linux用户及权限基础 6 ---- linux umask使用详解
- linux下用户和组及权限详解
- Linux用户、用户组权限管理详解
- 菜鸟学Linux 第009篇笔记 Linux用户及权限详解
- Linux权限详解:用户、用户组及文件权限
- Linux 必备技能-用户及权限详解
- linux笔记-用户及权限详解
- 第五章、Linux用户及权限详解
- Linux 用户操作权限详解
- linux创建用户 限制权限-用户(User)和用户组(Group)配置文件详解
- Linux 用户及权限详解(1) (笔记)
- Linux用户管理(权限修改)/etc/passwd详解
- Linux用户、用户组权限管理详解
- linux用户文件权限详解-精品总结(二)
- linux下oracle用户、权限与角色管理详解
- linux用户管理,linux用户口令管理,linux用户组管理,linux用户权限管理详解
- Linux权限详解,多用户多组各种权限配置原理
- [鸟哥linux视频教程整理]03_04_Linux用户及权限详解
- Linux学习笔记——用户及权限详解