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


在真机上操作,还原环境

[root@room9pc14 桌面]# rht-vmctl reset cla***oom

[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 hanjie

[root@server0 ~]#ls /home

[root@server0 ~]#su - hanjie 

[root@server0 ~]#$ touch a.txt

[root@server0 ~]#crontab -e -u hanjie

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

[root@server0 ~]#watch -n 1 cat /home/natasha/abc.txt



[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 /nsd010

[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/

[root@S ~]# mkdir /nsddir

[root@S ~]# touch /nsddir/readme.txt

[root@S ~]# useradd zhangsan

[root@S ~]# su - zhangsan

[zhangsan@S ~]$ exit

[root@S ~]# chmod o+w /nsddir/

[root@S ~]# su - zhangsan

[zhangsan@S ~]$ mkdir /nsddir/abc

[zhangsan@S ~]$ 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] 属主:属组 文档...


[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服务器: cla***oom


    客户端:指定服务端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服务器: cla***oom.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











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章