连接文件、命令别名、sudo概述

1、连接文件

(1)软连接

是连接文件本身,可以跨分区建立软连接,不会因为不同分区而出现不能使用的问题。

在创建软连接的文件中,修改一处文件另一处同时发生修改,当删除软连接对象时,不影响源文件使用,当删除源文件后,连接对象失去作用。
创建软连接的方式:
#ln -s soure /file object
#ln -s /root/test.txt testlink

(2)硬连接

在文件中使用inode号连接,两个连接文件同事使用一个inode号进行文件表示,一处文件修改,修改针对文件底层数据块修改,两个文件同时修改内容,删除一处文件,不会影响另一处文件的使用。因为硬连接使用inode号连接,所以只能在同分区能使用,不能跨分区使用。
创建硬连接的方式:
#ln soure /file object
#ln /root/test.txt testlink2

2、命令别名

(1)定义别名

alias [name[=value]]
#alias li=’cat /etc/passwd’

(2)删除别名

unalias li

(3)查看系统可用别名

alias

3.sudo中的Alias主要分成4种

Host_Alias 、Cmnd_Alias 、User_Alias 、Runas_Alias

(1) 配置Host_Alias:就是主机的列表

Host_Alias
HOST_FLAG = hostname1, hostname2, hostname3

(2) 配置Cmnd_Alias:就是允许执行的命令的列表,命令前加上!表示不能执行此命令.

注意:命令一定要使用绝对路径,避免其他目录的同名命令被执行,造成安全隐患 ,因此使用的时候也是使用绝对路径!

Cmnd_Alias
COMMAND_FLAG = command1, command2, command3 ,!command4

(3) 配置User_Alias:就是具有sudo权限的用户的列表

User_Alias USER_FLAG = user1, user2, user3

(4) 配置Runas_Alias:就是用户以什么身份执行(例如root,或者oracle)的列表

Runas_Alias RUNAS_FLAG = operator1, operator2, operator3

(5) 配置权限

配置权限的格式如下:

USER_FLAG HOST_FLAG=(RUNAS_FLAG) COMMAND_FLAG

如果不需要密码验证的话,则按照这样的格式来配置

USER_FLAG HOST_FLAG=(RUNAS_FLAG) NOPASSWD: COMMAND_FLAG

4、sudo概述

sudo允许根据指定的安全策略,运行一个用户以其他用户身份或管理员身份去执行某个命令。

(1)sudo配置

查看sudo软件包:# rpm -qi sudo

查看是否安装了sudo :rpm -qa|grep sudo
如果没有安装则在系统光盘中找到sudo的rpm包进行安装:rpm -vih /media/Packages/sudo-1.8.6p7-16.e17.x86_64

sudoers的模板配置文件:# cat /etc/sudoers

扫描二维码关注公众号,回复: 9963437 查看本文章

(2)配置一个普通用户,不需要切换密码就能以管理员身份执行管理命令

yanhui ALL=(ALL) NOPASSWD: ALL
第一个ALL:多个系统之间部署 sudo 环境时,该ALL代表所有主机。
也可以换成相应的主机名,表示改规则只适用主机名对应的系统
第二个ALL(即括号内的):指出规定的 user 用户能够以何种身份来执行命令。
该ALL表示user用户能够以任何用户的身份执行命令
第三个ALL:表示能执行"命令表",ALL表示用户能够执行系统中的所有命令。

(3)定义别名并简单验证

Cmnd_Alias NETADMINCMD = /usr/sbin/ip,/usr/sbin/ifconfig,/usr/sbin/route
Cmnd_Alias USERADMINCMD = /usr/sbin/useradd,/ur/sbin/userdel,/usr/sbin/passwd,! /usr/sbin/passwd root
fedora ALL=(ALL)        NETADMINCMD
centos ALL=(ALL)        NETADMINCMD,USERADMINCMD

实例

为用户stu1进行提权操作,让他只具用户与用户组的管理权限
编辑sudo配置文件/etc/sudoers
vim /etc/sudoers
在这里插入图片描述
使用Cmnd_Alias为用户与用户组的管理权限定义别名,并加入以下权限
stu1 ALL=(ALL) NETADMINCMD,USERADMINCMD

在这里插入图片描述
使用wq!保存并强制退出

发布了11 篇原创文章 · 获赞 11 · 访问量 472

猜你喜欢

转载自blog.csdn.net/zjdda/article/details/104593068