计算机基本知识之linux系统管理
Posted mrmeng123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机基本知识之linux系统管理相关的知识,希望对你有一定的参考价值。
本章涉及用户权限管理,NFS共享文件,ldap认证。概念要搞清楚
基本权限的类别
? 访问方式(权限)
– 读取:允许查看内容-read r
– 写入:允许修改内容-write w
– 可执行:允许运行和切换-execute x
? 访问方式(权限)
– 读取:允许查看内容-read r
– 写入:允许修改内容-write w
– 可执行:允许运行和切换-execute x
对文本文件:
r: cat head tail less
w: vim > >>
x: Shell脚本编程
r: cat head tail less
w: vim > >>
x: Shell脚本编程
? 权限适用对象(归属)
– 所有者:拥有此文件/目录的用户-user u
– 所属组:拥有此文件/目录的组-group g
– 其他用户:除所有者、所属组以外的用户-other o
查看权限
? 使用 ls -l 命令
– ls -ld 文件或目录...
以 - 开头 : 文本文件
以 d 开头 : 目录
以 l 开头 : 快捷方式
以 d 开头 : 目录
以 l 开头 : 快捷方式
[[email protected] ~]# ls -l /etc/passwd
[[email protected] ~]# ls -ld /etc/
[[email protected] ~]# ls -ld /tmp/
[[email protected] ~]# ls -l /etc/shadow
[[email protected] ~]# ls -ld /home/student
[[email protected] ~]# ls -ld /etc/
[[email protected] ~]# ls -ld /tmp/
[[email protected] ~]# ls -l /etc/shadow
[[email protected] ~]# ls -ld /home/student
设置基本权限
? 使用 chmod 命令
– chmod [-R] 归属关系+-=权限类别 文档...
[-R]:递归修改权限
? 使用 chmod 命令
– chmod [-R] 归属关系+-=权限类别 文档...
[-R]:递归修改权限
[[email protected] ~]# mkdir /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod u-w /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod u-w /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod g+w /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod o=--- /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod o=--- /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod u=rwx,g=rwx,o=rx /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod ugo=rwx /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod o-w /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod ugo=rwx /nsd01
[[email protected] ~]# ls -ld /nsd01
[[email protected] ~]# chmod o-w /nsd01
[[email protected] ~]# ls -ld /nsd01
##################################################
如何判断用户权限: 匹配及停止
1.首先判断用户对文档的身份 所有者>所属组>其他人
2.查看相应身份权限位置的划分
如何判断用户权限: 匹配及停止
1.首先判断用户对文档的身份 所有者>所属组>其他人
2.查看相应身份权限位置的划分
权限不足:Permission denied
目录的 r 权限:能够 ls 浏览此目录内容
目录的 w 权限:能够执行 rm/mv/cp/mkdir/touch/等更改目录内容的操作
目录的 x 权限:能够 cd 切换到此目录
目录的 w 权限:能够执行 rm/mv/cp/mkdir/touch/等更改目录内容的操作
目录的 x 权限:能够 cd 切换到此目录
###############################################
以root用户新建/nsddir/目录,在此目录下新建readme.txt文件
并进一步完成下列操作
1)使用户lisi能够在此目录下创建子目录 切换用户 su - lisi
chmod o+w /nsddir/
2)使用户lisi不能够在此目录下创建子目录
chmod o-w /nsddir/
3)使用户lisi能够修改readme.txt文件
chmod o+w /nsddir/readme.txt
4)调整此目录的权限,使所有用户都不能cd进入此目录
chmod u-x,g-x,o-x /nsddir/
5)为此目录及其下所有文档设置权限 rwxr-x---
chmod -R u=rwx,g=rx,o=--- /nsddir/
以root用户新建/nsddir/目录,在此目录下新建readme.txt文件
并进一步完成下列操作
1)使用户lisi能够在此目录下创建子目录 切换用户 su - lisi
chmod o+w /nsddir/
2)使用户lisi不能够在此目录下创建子目录
chmod o-w /nsddir/
3)使用户lisi能够修改readme.txt文件
chmod o+w /nsddir/readme.txt
4)调整此目录的权限,使所有用户都不能cd进入此目录
chmod u-x,g-x,o-x /nsddir/
5)为此目录及其下所有文档设置权限 rwxr-x---
chmod -R u=rwx,g=rx,o=--- /nsddir/
#################################################
? 使用 chown 命令
– chown [-R] 属主 文档...
– chown [-R] :属组 文档...
– chown [-R] 属主:属组 文档...
? 使用 chown 命令
– chown [-R] 属主 文档...
– chown [-R] :属组 文档...
– chown [-R] 属主:属组 文档...
[[email protected] ~]# useradd harry
[[email protected] ~]# groupadd tarena
[[email protected] ~]# mkdir /nsd03
[[email protected] ~]# ls -ld /nsd03
[[email protected] ~]# groupadd tarena
[[email protected] ~]# mkdir /nsd03
[[email protected] ~]# ls -ld /nsd03
###############################################
利用root用户新建/nsd06目录,并进一步完成下列操作
1)将属主设为gelin01,属组设为tarena组
[[email protected] /]# useradd gelin01
[[email protected] /]# groupadd tarena
[[email protected] /]# chown gelin01:tarena /nsd06
2)使用户gelin01对此目录具有rwx权限
除属主与属组之外的人,对此目录无任何权限
[[email protected] /]# chmod o=--- /nsd06
3)使用户gelin02能进入、查看此目录
[[email protected] /]# gpasswd -a gelin02 tarena
4)将gelin01加入tarena组, 将nsd06目录的权限设为rw-r-x---
再测试gelin01用户能否进入此目录
[[email protected] /]# chmod u=rw,g=rx /nsd06
#################################################
附加权限(特殊权限)
附加权限(特殊权限)
Set GID
? 附加在属组的 x 位上
– 属组的权限标识会变为 s
– 适用于目录,Set GID可以使目录下新增的文档自动设
置与父目录相同的属组
– 自动继承所属组身份
? 附加在属组的 x 位上
– 属组的权限标识会变为 s
– 适用于目录,Set GID可以使目录下新增的文档自动设
置与父目录相同的属组
– 自动继承所属组身份
[[email protected] ~]# mkdir /nsd07
[[email protected] ~]# ls -ld /nsd07
[[email protected] ~]# chown :tarena /nsd07 #修改所属组
[[email protected] ~]# ls -ld /nsd07
[[email protected] ~]# ls -ld /nsd07
[[email protected] ~]# chown :tarena /nsd07 #修改所属组
[[email protected] ~]# ls -ld /nsd07
[[email protected] ~]# mkdir /nsd07/test
[[email protected] ~]# ls -ld /nsd07/test
[[email protected] ~]# ls -ld /nsd07
[[email protected] ~]# chmod g+s /nsd07 #赋予Set Gid特殊权限
[[email protected] ~]# ls -ld /nsd07
[[email protected] ~]# ls -ld /nsd07/test
[[email protected] ~]# ls -ld /nsd07
[[email protected] ~]# chmod g+s /nsd07 #赋予Set Gid特殊权限
[[email protected] ~]# ls -ld /nsd07
[[email protected] ~]# mkdir /nsd07/abc
[[email protected] ~]# ls -ld /nsd07/abc
[[email protected] ~]# touch /nsd07/1.txt
[[email protected] ~]# ls -l /nsd07/1.txt
[[email protected] ~]# ls -ld /nsd07/test
[[email protected] ~]# ls -ld /nsd07/abc
[[email protected] ~]# touch /nsd07/1.txt
[[email protected] ~]# ls -l /nsd07/1.txt
[[email protected] ~]# ls -ld /nsd07/test
##############################################
drwxr-s---. 2 root caiwu /nsd08
groupadd caiwu
#################################################
acl策略的作用
? 文档归属的局限性
– 任何人只属于三种角色:属主、属组、其他人
– 无法实现更精细的控制
acl策略的作用
? 文档归属的局限性
– 任何人只属于三种角色:属主、属组、其他人
– 无法实现更精细的控制
? acl访问策略
– 能够对个别用户、个别组设置独立的权限
– 大多数挂载的EXT3/4、XFS文件系统默认已支持
– 能够对个别用户、个别组设置独立的权限
– 大多数挂载的EXT3/4、XFS文件系统默认已支持
]# mkdir /nsd08
]# chmod o=--- /nsd08
]# ls -ld /nsd08
]# su - lisi
]$ cd /nsd08
-bash: cd: /nsd08: Permission denied
]$ exit
]# setfacl -m u:lisi:rx /nsd08 #设置lisi单独ACL权限
]# getfacl /nsd08 #专用于查看ACL权限
]# su - lisi
]$ cd /nsd08
]$ pwd
]$ exit
]# chmod o=--- /nsd08
]# ls -ld /nsd08
]# su - lisi
]$ cd /nsd08
-bash: cd: /nsd08: Permission denied
]$ exit
]# setfacl -m u:lisi:rx /nsd08 #设置lisi单独ACL权限
]# getfacl /nsd08 #专用于查看ACL权限
]# su - lisi
]$ cd /nsd08
]$ pwd
]$ exit
? 使用 getfacl、setfacl 命令
– getfacl 文档...
– setfacl [-R] -m u:用户名:权限类别 文档...
– setfacl [-R] -m g:组名:权限类别 文档...
– getfacl 文档...
– setfacl [-R] -m u:用户名:权限类别 文档...
– setfacl [-R] -m g:组名:权限类别 文档...
– setfacl [-R] -x u:用户名 文档... #删除指定ACL
– setfacl [-R] -b 文档... #删除所有ACL
– setfacl [-R] -b 文档... #删除所有ACL
]# mkdir /nsd10
]# setfacl -m u:lisi:rx /nsd10
]# setfacl -m u:dc:rwx /nsd10
]# setfacl -m u:zhangsan:rx /nsd10
]# setfacl -m u:harry:rwx /nsd10
]# getfacl /nsd10
]# setfacl -x u:lisi /nsd10 #删除lisi的ACL
]# getfacl /nsd10
]# setfacl -x u:harry /nsd10 #删除harry的ACL
]# getfacl /nsd10
]# getfacl /nsd10
]# setfacl -x u:harry /nsd10 #删除harry的ACL
]# getfacl /nsd10
]# setfacl -b /nsd10
]# getfacl /nsd10
]# getfacl /nsd10
#################################################
[[email protected] /]# mkdir /public
[r[email protected] /]# chmod ugo=rwx /public
[[email protected] /]# ls -ld /public
[[email protected] /]# mkdir /public
[r[email protected] /]# chmod ugo=rwx /public
[[email protected] /]# ls -ld /public
为/public添加黑名单,阻止用户harry访问
[[email protected] /]# setfacl -m u:harry:--- /public/
[[email protected] /]# getfacl /public/
[[email protected] /]# setfacl -m u:harry:--- /public/
[[email protected] /]# getfacl /public/
#################################################
实现用户zhangsan能够读取/etc/shadow文件内容,您有几种方法?
实现用户zhangsan能够读取/etc/shadow文件内容,您有几种方法?
1.其他人权限 chmod o+r /etc/shadow
2.所属组权限 gpasswd -a zhangsan 所属组
chmod g+r /etc/shadow
chmod g+r /etc/shadow
3.所有者权限 chown zhangsan /etc/shadow
chmod u+r /etc/shadow
chmod u+r /etc/shadow
4.设置ACL权限 setfacl -m u:zhangsan:r /etc/shadow
################################################
使用LDAP认证
使用LDAP认证
作用:网络用户认证,用户集中管理
网络用户信息:LDAP服务器提供
本地用户信息:/etc/passwd /etc/shadow提供
网络用户信息:LDAP服务器提供
本地用户信息:/etc/passwd /etc/shadow提供
LDAP服务器:虚拟机classroom
[[email protected] ~]# authconfig-gtk
选择LDAP
dc=example,dc=com #指定服务端域名
classroom.example.com #指定服务端主机名
勾选TLS加密
使用证书加密:
http://classroom.example.com/pub/example-ca.crt
选择LDAP
dc=example,dc=com #指定服务端域名
classroom.example.com #指定服务端主机名
勾选TLS加密
使用证书加密:
http://classroom.example.com/pub/example-ca.crt
选择LDAP密码
4.重起服务验证
]# systemctl restart sssd
]# systemctl enable sssd #设置开机自启动
]# grep ldapuser0 /etc/passwd
]# id ldapuser0
]# systemctl restart sssd
]# systemctl enable sssd #设置开机自启动
]# grep ldapuser0 /etc/passwd
]# id ldapuser0
#################################################
家目录漫游
家目录漫游
什么是NFS共享
? Network File System,网络文件系统
– 由NFS服务器将指定的文件夹共享给客户机
– 客户机将此共享目录 mount 到本地目录,访问此共享
资源就像访问本地目录一样方便
– 类似于 EXT4、XFS等类型,只不过资源在网上
NFS服务器:虚拟机classroom
客户端:虚拟机server
1.查看classroom共享
[[email protected] ~]# showmount -e classroom.example.com
Export list for classroom.example.com:
/home/guests 172.25.0.0/255.255.0.0
共享路径 谁可以访问共享
1.查看classroom共享
[[email protected] ~]# showmount -e classroom.example.com
Export list for classroom.example.com:
/home/guests 172.25.0.0/255.255.0.0
共享路径 谁可以访问共享
[[email protected] ~]# ifconfig | head -2
2.挂载classroom的共享
]# mkdir /test
]# mount classroom.example.com:/home/guests /test
]# ls /test
]# mkdir /test
]# mount classroom.example.com:/home/guests /test
]# ls /test
]# su - ldapuser0
su: 警告:无法更改到 /home/guests/ldapuser0 目录: 没有那个文件或目录
mkdir: cannot create directory ‘/home/guests‘: Permission denied
-bash-4.2$ exit
通过报错显示,家目录在/home/guests
[[email protected] ~]# mkdir /home/guests
[[email protected] ~]# umount /test
su: 警告:无法更改到 /home/guests/ldapuser0 目录: 没有那个文件或目录
mkdir: cannot create directory ‘/home/guests‘: Permission denied
-bash-4.2$ exit
通过报错显示,家目录在/home/guests
[[email protected] ~]# mkdir /home/guests
[[email protected] ~]# umount /test
[[email protected] ~]# mount classroom.example.com:/home/guests/ /home/guests/
[[email protected] ~]# ls /home/guests/
[[email protected] ~]# su - ldapuser0
#################################################
以上是关于计算机基本知识之linux系统管理的主要内容,如果未能解决你的问题,请参考以下文章