LINUX系统管理员技术(Admin)-------第五天

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LINUX系统管理员技术(Admin)-------第五天相关的知识,希望对你有一定的参考价值。


在真机上操作,还原环境

[[email protected] 桌面]# rht-vmctl reset classroom

[[email protected] 桌面]# rht-vmctl reset server

[[email protected] 桌面]# 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解析

[[email protected] ~]# nslookup server0.example.com ?


###################################################

?cron计划任务


系统服务:crond

日志文件:/var/log/crond



? 使用 crontab 命令

– 编辑:crontab -e [-u 用户名]

– 查看:crontab -l [-u 用户名]

– 清除:crontab -r [-u 用户名]


1.查看服务状态

[[email protected] ~]# systemctl status crond


2.书写计划任务, ?

? ?* ? ?* ? ?* ? ?* ? ?*

? ?分 ?时 ?日 ?月 ?周

[[email protected] ~]#useradd hanjie

[[email protected] ~]#ls /home

[[email protected] ~]#su - hanjie?

[[email protected] ~]#$ touch a.txt

[[email protected] ~]#crontab -e -u hanjie

*/1 * * * * /usr/bin/date ?>> /home/hanjie/abc.txt

[[email protected] ~]#watch -n 1 cat /home/natasha/abc.txt



[[email protected] ~]# useradd natasha

[[email protected] ~]# which ifconfig ? ?#查询命令所对应的程序在那里

[[email protected] ~]# which date

[[email protected] ~]# crontab -e -u natasha

[[email protected] ~]# crontab -l -u natasha


*/1 * * * * /usr/bin/date ?>> /home/natasha/abc.txt


[[email protected] ~]# ?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





权限位 硬连接数 属主 属组 大小 最后修改时间 文件/目录名称


[[email protected] ~]# ls -l /etc/passwd

[[email protected] ~]# ls -ld /etc/


[[email protected] ~]# ls -ld /root


[[email protected] ~]# ls -ld /home/student


[[email protected] ~]# ls -ld /tmp----是一个特殊的基本权限


? 以“-”开头: 文件

? 以“l”开头: 快捷方式

? 以“d”开头: 目录


? 使用 chmod 命令

– chmod [-R] 归属关系+-=权限类别 文档...

? ? ? ? [-R] 递归赋予权限


[[email protected] ~]# mkdir /nsd010

[[email protected] ~]# ls -ld /nsd01


[[email protected] ~]# chmod u-x /nsd01

[[email protected] ~]# ls -ld /nsd01


[[email protected] ~]# chmod g+w /nsd01

[[email protected] ~]# ls -ld /nsd01


[[email protected] ~]# chmod o=rwx /nsd01

[[email protected] ~]# ls -ld /nsd01


[[email protected] ~]# chmod u=rwx,g=rx,o=r /nsd01

[[email protected] ~]# 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/

[[email protected] ~]# mkdir /nsddir

[[email protected] ~]# touch /nsddir/readme.txt

[[email protected] ~]# useradd zhangsan

[[email protected] ~]# su - zhangsan

[[email protected] ~]$ exit

[[email protected] ~]# chmod o+w /nsddir/

[[email protected] ~]# su - zhangsan

[[email protected] ~]$ mkdir /nsddir/abc

[[email protected] ~]$ ls /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] 属主:属组 文档...


[[email protected] ~]# mkdir /nsd05

[[email protected] ~]# ls -ld /nsd05

[[email protected] ~]# groupadd tedu

[[email protected] ~]# chown dc:tedu /nsd05

[[email protected] ~]# ls -ld /nsd05


[[email protected] ~]# chown student /nsd05

[[email protected] ~]# ls -ld /nsd05


[[email protected] ~]# chown :root /nsd05/

[[email protected] ~]# ls -ld /nsd05/


####################################################

?特殊权限(附加权限)


Set UID


? 附加在属主的 x 位上

– 属主的权限标识会变为 s

– 适用于可执行文件,Set UID可以让使用者具有文件属

主的身份及部分权限(传递所有者身份)



Set GID

? 附加在属组的 x 位上

– 属组的权限标识会变为 s

– 适用于可执行文件,功能与Set UID类似(传递所属组身份)


– 适用于目录,Set GID可以使目录下新增的文档自动设

置与父目录相同的属组

??

[[email protected] ~]# mkdir /tarena

[[email protected] ~]# ls -ld /tarena


[[email protected] ~]# chown :tedu /tarena

[[email protected] ~]# ls -ld /tarena


[[email protected] ~]# mkdir /tarena/nsd01

[[email protected] ~]# ls -ld /tarena/nsd01


[[email protected] ~]# chmod g+s ?/tarena/

[[email protected] ~]# ls -ld ?/tarena/


[[email protected] ~]# mkdir ? /tarena/nsd02

[[email protected] ~]# ls -ld ?/tarena/nsd02

[[email protected] ~]# touch ?/tarena/nsd02/abc.txt

[[email protected] ~]# ls -l ?/tarena/nsd02/abc.txt

#################################################



Sticky Bit

? 附加在其他人的 x 位上

– 其他人的权限标识会变为 t

– 适用于开放 w 权限的目录,可以阻止用户滥用 w 写入

权限(禁止操作别人的文档)


[[email protected] ~]# mkdir /public

[[email protected] ~]# chmod u=rwx,g=rwx,o=rwx /public

[[email protected] ~]# ls -ld /public


[[email protected] ~]# chmod o+t /public

[[email protected] ~]# ls -ld /public


###################################################


acl策略的作用


? 文档归属的局限性

– 任何人只属于三种角色:属主、属组、其他人

– 无法实现更精细的控制


? acl访问策略

– 能够对个别用户、个别组设置独立的权限

– 大多数挂载的EXT3/4、XFS文件系统默认已支持



[[email protected] ~]# mkdir /test

[[email protected] ~]# ls -ld /test

[[email protected] ~]# chmod o=--- /test

[[email protected] ~]# ls -ld /test

[[email protected] ~]# su - zhangsan


[[email protected] ~]$ cd /test/

-bash: cd: /test/: Permission denied

[[email protected] ~]$ exit

logout


[[email protected] ~]# setfacl -m u:zhangsan:rx /test/

[[email protected] ~]# getfacl /test/

[[email protected] ~]# su - zhangsan

[[email protected] ~]$ cd /test/

[[email protected] test]$ pwd

[[email protected] test]$ exit



? 使用 getfacl、setfacl 命令

– getfacl 文档...

– setfacl ?-m u:用户名:权限类别 文档...

– setfacl ?-m g:组名:权限类别 文档...

– setfacl ?-x u:用户名 ? ? 文档... ? ? ? ? #删除指定的ACL策略 ? ?

– setfacl ?-b 文档... ? ? ? ? ? ? ? ? ? ? ? ? ? ? #清空ACL策略 ? ? ? ??


[[email protected] ~]# getfacl /test/

[[email protected] ~]# setfacl -m u:dc:rwx /test/

[[email protected] ~]# setfacl -m u:natasha:rx /test/

[[email protected] ~]# getfacl /test/


[[email protected] ~]# setfacl -x u:dc /test/ ?#删除指定的ACL

[[email protected] ~]# getfacl /test/


[[email protected] ~]# setfacl -b /test/ ? ? #清空所有的ACL

[[email protected] ~]# getfacl /test/




##################################################

[[email protected] ~]# mkdir /nsd20

[[email protected] ~]# chmod u=rwx,g=rwx,o=rwx /nsd20

[[email protected] ~]# ls -ld /nsd20

drwxrwxrwx. 2 root root 6 10月 30 15:49 /nsd20

[[email protected] ~]# setfacl -m u:natasha:--- /nsd20


###################################################

使用LDAP认证


? ? ? ?传统用户名密码:本地创建,用于本地登陆 ?/etc/passwd

? ? ? ?网络用户: 在LDAP服务器上创建,可以登陆域中每一台机器


? LDAP服务器: classroom


? ? 客户端:指定服务端LDAP位置

? ??

? 1.安装客户端软件

? ? ? – 软件包:

? ? ? ? ? sssd:与服务端沟通软件


? ? ? ? ? authconfig-gtk:图形配置sssd工具


[[email protected] ~]# rpm -q sssd ? ? ? ? ? #验证软件包安装成功

[[email protected] ~]# rpm -q authconfig-gtk


? 2.运行图形配置sssd工具:authconfig-gtk

[[email protected] ~]# 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服务,并设置为开机自起

[[email protected] ~]# systemctl restart sssd

[[email protected] ~]# systemctl enable sssd

4.验证

[[email protected] ~]# grep ‘ldapuser0‘ /etc/passwd

[[email protected] ~]# id ldapuser0


##################################################

家目录漫游


? Network File System,网络文件系统

– 由NFS服务器将指定的文件夹共享给客户机

– 客户机将此共享目录 mount 到本地目录,访问此共享

资源就像访问本地目录一样方便

– 类似于 EXT4、XFS等类型,只不过资源在网上



? 查看NFS资源

[[email protected] ~]# showmount -e 172.25.254.254



? 进行挂载,将服务端NFS共享内容挂载到本地目录

[[email protected] ~]# mkdir /home/guests


# mount ?172.25.254.254:/home/guests/ ? ?/home/guests


[[email protected] ~]# ls /home/guests

[[email protected] ~]# su - ldapuser0











以上是关于LINUX系统管理员技术(Admin)-------第五天的主要内容,如果未能解决你的问题,请参考以下文章

LINUX系统管理员技术(Admin)-------第五天

LINUX系统管理员技术(Admin)-------第三天

LINUX系统管理员技术(Admin)-------第二天

LINUX系统管理员技术(Admin)-------第六天

Linux系统简介&分区&基础命令(ADMIN01-1)

Linux系统简介&分区&基础命令(ADMIN01-1)