2019独角兽企业重金招聘Python工程师标准>>>
在真机上操作,还原环境
[root@room9pc14 桌面]# rht-vmctl reset classroom
[root@room9pc14 桌面]# rht-vmctl reset server
[root@room9pc14 桌面]# rht-vmctl reset desktop
###################################################
为虚拟机 server 配置以下静态地址参数
– 主机名:server0.example.com
– IP地址:172.25.0.11
– 子网掩码:255.255.255.0
– 默认网关:172.25.0.254
– DNS服务器:172.25.254.254
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# cat /etc/resolv.conf
测试DNS解析
[root@server0 ~]# nslookup server0.example.com
###################################################
cron计划任务
系统服务:crond
日志文件:/var/log/crond
• 使用 crontab 命令
– 编辑:crontab -e [-u 用户名]
– 查看:crontab -l [-u 用户名]
– 清除:crontab -r [-u 用户名]
1.查看服务状态
[root@server0 ~]# systemctl status crond
2.书写计划任务,
* * * * *
分 时 日 月 周
[root@server0 ~]# useradd natasha
[root@server0 ~]# which ifconfig #查询命令所对应的程序在那里
[root@server0 ~]# which date
[root@server0 ~]# crontab -e -u natasha
[root@server0 ~]# crontab -l -u natasha
*/1 * * * * /usr/bin/date >> /home/natasha/abc.txt
[root@server0 ~]# watch -n 1 cat /home/natasha/abc.txt
#######################################################
基本权限的类别
• 访问方式(权限)
– 读取:允许查看内容-read r
– 写入:允许修改内容-write w
– 可执行:允许运行和切换-execute x
对于文本文件:
r: cat head tail less
w: vim
x: 运行
• 权限适用对象(归属)
– 所有者:拥有此文件/目录的用户-user u
– 所属组:拥有此文件/目录的组-group g
– 其他用户:除所有者、所属组以外的用户-other o
权限位 硬连接数 属主 属组 大小 最后修改时间 文件/目录名称
[root@server0 ~]# ls -l /etc/passwd
[root@server0 ~]# ls -ld /etc/
[root@server0 ~]# ls -ld /root
[root@server0 ~]# ls -ld /home/student
[root@server0 ~]# ls -ld /tmp
以“-”开头: 文件
以“l”开头: 快捷方式
以“d”开头: 目录
• 使用 chmod 命令
– chmod [-R] 归属关系+-=权限类别 文档...
[-R] 递归赋予权限
[root@server0 ~]# mkdir /nsd01
[root@server0 ~]# ls -ld /nsd01
[root@server0 ~]# chmod u-x /nsd01
[root@server0 ~]# ls -ld /nsd01
[root@server0 ~]# chmod g+w /nsd01
[root@server0 ~]# ls -ld /nsd01
[root@server0 ~]# chmod o=rwx /nsd01
[root@server0 ~]# ls -ld /nsd01
[root@server0 ~]# chmod u=rwx,g=rx,o=r /nsd01
[root@server0 ~]# ls -ld /nsd01
################################################
如何判断用户具备权限
1.判断用户所属的身份 所有者>所属组>其他人 匹配及停止
2.看相应权限位的权限划分
目录的 r 权限:能够 ls 浏览此目录内容
目录的 w 权限:能够执行 rm/mv/cp/mkdir/touch/... 等更改目录内容的操作
目录的 x 权限:能够 cd 切换到此目录
####################################################
以root用户新建/nsddir/目录,在此目录下新建readme.txt文件,并进一步完成下列操作
1)使用户zhangsan能够在此目录下创建子目录 切换用户 su - zhangsan
chmod o+w /nsddir/
2)使用户zhangsan不能够在此目录下创建子目录
chmod o-w /nsddir/
3)使用户zhangsan能够修改readme.txt文件
chmod o+w /nsddir/readme.txt
4)调整此目录的权限,使所有用户都不能进入此目录
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] 属主:属组 文档...
[root@server0 ~]# mkdir /nsd05
[root@server0 ~]# ls -ld /nsd05
[root@server0 ~]# groupadd tedu
[root@server0 ~]# chown dc:tedu /nsd05
[root@server0 ~]# ls -ld /nsd05
[root@server0 ~]# chown student /nsd05
[root@server0 ~]# ls -ld /nsd05
[root@server0 ~]# chown :root /nsd05/
[root@server0 ~]# ls -ld /nsd05/
####################################################
特殊权限(附加权限)
Set UID
• 附加在属主的 x 位上
– 属主的权限标识会变为 s
– 适用于可执行文件,Set UID可以让使用者具有文件属
主的身份及部分权限(传递所有者身份)
Set GID
• 附加在属组的 x 位上
– 属组的权限标识会变为 s
– 适用于可执行文件,功能与Set UID类似(传递所属组身份)
– 适用于目录,Set GID可以使目录下新增的文档自动设
置与父目录相同的属组
[root@server0 ~]# mkdir /tarena
[root@server0 ~]# ls -ld /tarena
[root@server0 ~]# chown :tedu /tarena
[root@server0 ~]# ls -ld /tarena
[root@server0 ~]# mkdir /tarena/nsd01
[root@server0 ~]# ls -ld /tarena/nsd01
[root@server0 ~]# chmod g+s /tarena/
[root@server0 ~]# ls -ld /tarena/
[root@server0 ~]# mkdir /tarena/nsd02
[root@server0 ~]# ls -ld /tarena/nsd02
[root@server0 ~]# touch /tarena/nsd02/abc.txt
[root@server0 ~]# ls -l /tarena/nsd02/abc.txt
#################################################
Sticky Bit
• 附加在其他人的 x 位上
– 其他人的权限标识会变为 t
– 适用于开放 w 权限的目录,可以阻止用户滥用 w 写入
权限(禁止操作别人的文档)
[root@server0 ~]# mkdir /public
[root@server0 ~]# chmod u=rwx,g=rwx,o=rwx /public
[root@server0 ~]# ls -ld /public
[root@server0 ~]# chmod o+t /public
[root@server0 ~]# ls -ld /public
###################################################
acl策略的作用
• 文档归属的局限性
– 任何人只属于三种角色:属主、属组、其他人
– 无法实现更精细的控制
• acl访问策略
– 能够对个别用户、个别组设置独立的权限
– 大多数挂载的EXT3/4、XFS文件系统默认已支持
[root@server0 ~]# mkdir /test
[root@server0 ~]# ls -ld /test
[root@server0 ~]# chmod o=--- /test
[root@server0 ~]# ls -ld /test
[root@server0 ~]# su - zhangsan
[zhangsan@server0 ~]$ cd /test/
-bash: cd: /test/: Permission denied
[zhangsan@server0 ~]$ exit
logout
[root@server0 ~]# setfacl -m u:zhangsan:rx /test/
[root@server0 ~]# getfacl /test/
[root@server0 ~]# su - zhangsan
[zhangsan@server0 ~]$ cd /test/
[zhangsan@server0 test]$ pwd
[zhangsan@server0 test]$ exit
• 使用 getfacl、setfacl 命令
– getfacl 文档...
– setfacl -m u:用户名:权限类别 文档...
– setfacl -m g:组名:权限类别 文档...
– setfacl -x u:用户名 文档... #删除指定的ACL策略
– setfacl -b 文档... #清空ACL策略
[root@server0 ~]# getfacl /test/
[root@server0 ~]# setfacl -m u:dc:rwx /test/
[root@server0 ~]# setfacl -m u:natasha:rx /test/
[root@server0 ~]# getfacl /test/
[root@server0 ~]# setfacl -x u:dc /test/ #删除指定的ACL
[root@server0 ~]# getfacl /test/
[root@server0 ~]# setfacl -b /test/ #清空所有的ACL
[root@server0 ~]# getfacl /test/
##################################################
[root@server0 ~]# mkdir /nsd20
[root@server0 ~]# chmod u=rwx,g=rwx,o=rwx /nsd20
[root@server0 ~]# ls -ld /nsd20
drwxrwxrwx. 2 root root 6 10月 30 15:49 /nsd20
[root@server0 ~]# setfacl -m u:natasha:--- /nsd20
###################################################
使用LDAP认证
传统用户名密码:本地创建,用于本地登陆 /etc/passwd
网络用户: 在LDAP服务器上创建,可以登陆域中每一台机器
LDAP服务器: classroom
客户端:指定服务端LDAP位置
1.安装客户端软件
– 软件包:
sssd:与服务端沟通软件
authconfig-gtk:图形配置sssd工具
[root@server0 ~]# rpm -q sssd #验证软件包安装成功
[root@server0 ~]# rpm -q authconfig-gtk
2.运行图形配置sssd工具:authconfig-gtk
[root@server0 ~]# authconfig-gtk
用户账户数据库:LDAP
LDAP搜索基础DN:dc=example,dc=com
LDAP服务器: classroom.example.com
钩选:用TLS加密连接
指定证书加密:
http://172.25.254.254/pub/example-ca.crt
认证方法:LDAP密码
3.启动sssd服务,并设置为开机自起
[root@server0 ~]# systemctl restart sssd
[root@server0 ~]# systemctl enable sssd
4.验证
[root@server0 ~]# grep 'ldapuser0' /etc/passwd
[root@server0 ~]# id ldapuser0
##################################################
家目录漫游
• Network File System,网络文件系统
– 由NFS服务器将指定的文件夹共享给客户机
– 客户机将此共享目录 mount 到本地目录,访问此共享
资源就像访问本地目录一样方便
– 类似于 EXT4、XFS等类型,只不过资源在网上
• 查看NFS资源
[root@server0 ~]# showmount -e 172.25.254.254
• 进行挂载,将服务端NFS共享内容挂载到本地目录
[root@server0 ~]# mkdir /home/guests
# mount 172.25.254.254:/home/guests/ /home/guests
[root@server0 ~]# ls /home/guests
[root@server0 ~]# su - ldapuser0
#####################################################