sudo

sudo(Superuser Do)是 Linux 系统中允许普通用户以其他用户(默认是 root)权限执行指定命令的工具,核心作用是在保证系统安全的前提下,实现精细化的权限分配,避免直接使用 root 账号带来的风险。

命令格式 作用说明
sudo [命令] 以 root 权限执行单个命令,例如 sudo apt update(更新软件源)。
sudo -i 切换到 root 身份的交互式 shell(环境变量与 root 一致),退出用 exit
sudo -l 查看当前用户拥有的 sudo 权限(即能执行哪些命令)。

使用流程

#添加用户并设置密码
useradd shf
passwd shf

#root用户进行授权
visudo == vim /etc/sudoers

#配置文件
shf ALL=(ALL)  /usr/bin/cat,/usr/bin/head,/usr/bin/tail,/usr/bin/less

#切换普通用户进行测试
su - shf
tail /var/log/secure  #报错
tail: cannot open '/var/log/secure' for reading: Permission denied
sudo  tail /var/log/secure#成功

devops用户,运维人员专属,禁止root远程登录

授权所有命令并且不需要输入密码

#添加devops用户并设置密码
useradd devops
passwd devops

#root用户进行授权
visudo == vim /etc/sudoers

#配置文件
devops ALL=(ALL)  NOPASSWD: ALL

#切换普通用户进行测试
su - devops
tail /var/log/secure  #报错
tail: cannot open '/var/log/secure' for reading: Permission denied
sudo  tail /var/log/secure#成功
字段 含义
ALL 主机范围:允许在 “所有主机” 上使用该规则(多主机共享 sudoers 配置时生效,单机场景可忽略)。
(ALL) 目标用户范围devops 可切换到 “任何用户身份” 执行命令(括号内填允许的目标用户,ALL 代表所有,包括 root)。
NOPASSWD: 核心选项:执行后续命令时 “无需输入 devops 自己的密码”(默认配置需输密码,该选项会跳过密码验证)。
ALL 允许执行的命令devops 可执行 “系统中所有命令”(包括 rm -rf /shutdown 等高危命令)。
devops 授权对象:指定对 “devops” 这个普通用户生效
ubt系统
Defaults 默认配置关键字:作用于所有使用 sudo 的用户
editor=/bin/vim 指定默认编辑器editor 是 sudo 的内置参数,用于定义 “当命令需要编辑文件时” 调用的编辑器路径;/bin/vim 是 vim 编辑器的标准安装路径

ubt系统配置devops用户

vim /etc/sudoers
在开头加上
Defaults editor=/bin/vim
#该配置是 /etc/sudoers 文件中的默认参数设置,核心作用是:指定所有通过 sudo 执行 “需要调用编辑器” 的命令时,默认使用 /bin/vim 作为编辑器,替代系统可能自带的其他编辑器(如 nano)。
强制保持退出即可

实际生效场景

当执行需要编辑文件的 sudo 命令时,系统会自动用 /bin/vim 打开文件,无需手动指定编辑器,常见场景包括:

  • sudo visudo:编辑 /etc/sudoers 文件(sudo 的专用编辑命令,会自动语法校验)。

alias命令 别名

alias 是 Linux/Unix 系统中用于创建命令别名的工具,通过为常用命令(尤其是复杂命令)设置简短别名,可大幅简化终端操作,提高效率。

使用方法

1.创建临时别名(当前终端有效)

直接在终端执行 alias 命令,创建的别名仅在当前终端会话中生效,关闭终端后失效。

alias grep='grep --color'
2. 让别名永久生效(全局有效)

临时别名仅在当前终端有效,若需永久生效(重启终端或系统后仍可用),需将别名写入 Shell 的配置文件。

不同 Shell 对应的配置文件不同(默认多为 bashzsh):

临时别名仅在当前终端有效

bash:~/.bashrc

别名永久生效且对系统中所有用户(包括 root 和新创建的用户)全局有效

/etc/profile

操作步骤;

#编辑文件
vim ~/.bashrc  或 vim /etc/profile
#在文件最后添加别名
alias ll='ls -l'
alias grep='grep --color'
#保存并退出
:wq
#使当前终端配置立即生效(无需重启终端)
source /etc/profile source ~/.bashrc
3.查看已设置的别名
alias

alias cp='cp -i'
alias grep='grep --color'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
4,删除别名
#删除单个
unalias ll 
#删除当前终端所有别名(不影响配置文件)
unalias -a 

注意事项,若需执行原命令,可在命令前加\

\ls  #执行原始ls命令,不使用别名

系统效验检查

md5效验

MD5(Message-Digest Algorithm 5)是一种哈希算法,可将任意大小的文件转换为一个 128 位(32 个字符)的唯一哈希值(如 d41d8cd98f00b204e9800998ecf8427e)。

核心作用:若文件内容有任何微小变化(哪怕一个字符),其 MD5 值会完全不同,因此常用于验证文件完整性。

md5sum命令用法:

计算文件的md5值

md5sum shf.txt 
d41d8cd98f00b204e9800998ecf8427e  shf.txt

将MD5值保存到文件,便于后续验证

md5sum shf.txt > md5shf.txt
#查看md5shf.txt的文件内容
cat md5shf.txt 
d41d8cd98f00b204e9800998ecf8427e  shf.txt

验证文件的MD5值

  md5sum -c 保存MD5的文件名

验证成功:shf.txt: OK

验证失败:

shf.txt: FAILED
md5sum: WARNING: 1 computed checksum did NOT match

aide 工具

aide(Advanced Intrusion Detection Environment)是一款轻量且高效的文件完整性监控工具,通过对比文件的哈希值、权限、大小等属性变化,检测未授权的文件篡改

麒麟系统安装aide

安装命令

yum install -y aide

aide核心配置

#查看版本
aide --version

Aide 0.16.2
CONFIG_FILE = "/etc/aide.conf"
#备份默认配置
cp /etc/aide.conf /etc/aide.conf.bak
#编辑配置文件
vim /etc/aide.conf
在aide.conf文件添加
FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256
/etc/ FIPSR
/bin/ FIPSR
/sbin/ FIPSR

aide.conf文件详解

# Example configuration file for AIDE.
aide第一次运行的时候需要对指定的文件或目录,获取第1个效验值
@@define DBDIR /var/lib/aide
@@define LOGDIR /var/log/aide

# The location of the database to be read.
读取的数据库路径(检测使用的数据库)
database=file:@@{DBDIR}/aide.db.gz

# The location of the database to be written.
生成的新数据库路径(初始化或更新时使用)
database_out=file:@@{DBDIR}/aide.db.new.gz

# Whether to gzip the output to database
是否压缩输出的数据库文件
gzip_dbout=yes

# Default.
日志输出的详细级别
verbose=5

在aide.conf文件添加
FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256
/etc/ FIPSR
/bin/ FIPSR
/sbin/ FIPSR
缩写 含义(监控的文件属性) 说明
p permissions(权限) 监控文件的读写执行权限(rwx)、SUID/SGID 标志、特殊权限(如粘滞位)等。
i inode number(inode 号) 监控文件在文件系统中的唯一 inode 标识(inode 变化通常意味着文件被删除重建)。
n filename(文件名) 监控文件名及路径(防止文件被重命名或移动)。
u user(所有者) 监控文件所属用户(UID)的变化(防止未授权更改所有者)。
g group(所属组) 监控文件所属组(GID)的变化(防止未授权更改所属组)。
s size(大小) 监控文件字节数的变化(内容增减会直接反映在大小上)。
m mtime(内容修改时间) 监控文件内容最后修改的时间(stat 中的 mtime,内容变更会更新此时间)。
c ctime(状态修改时间) 监控文件元数据(权限、所有者等)最后修改的时间(stat 中的 ctime)。
acl Access Control List(访问控制列表) 监控文件的扩展 ACL 权限(超出传统 rwx 的精细化权限控制,如对特定用户的额外权限)。
selinux SELinux context(SELinux 安全上下文) 监控文件的 SELinux 安全上下文(仅在启用 SELinux 的系统中有效,如红帽、麒麟系统,防止安全上下文被篡改导致权限绕过)。
xattrs extended attributes(扩展属性) 监控文件的扩展属性(如用户自定义元数据、安全标记等,常见于支持 xattrs 的文件系统如 ext4、xfs)。
sha256 SHA-256 哈希值 计算并监控文件内容的 SHA-256 哈希(比 MD5/SHA-1 更安全,用于检测内容的任何微小变化)。
初始化aide数据库
# 生成临时数据库(耗时取决于监控文件数量)
aide --init
激活数据库
#将临时数据库转为正式数据库
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
aide使用方法
#检查当前系统与数据库的差异
aide --check
部分内容
Summary:
  Total number of entries:	3290
  Added entries:		0
  Removed entries:		0
  Changed entries:		7
更新数据库
#生成新数据库
aide --update
#替换旧数据库
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

ubt系统安装aide

安装命令

apt install -y aide
配置文件
vim /etc/aide/aide.conf
在后面添加
FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256
/etc/ FIPSR
/bin/ FIPSR
/sbin/ FIPSR
保存退出
:wq
初始化数据库
aide --init --config /etc/aide/aide.conf
#下面是初始化信息
Start timestamp: 2025-09-05 20:22:47 +0800 (AIDE 0.17.4)
AIDE initialized database at /var/lib/aide/aide.db.new
Ignored e2fs attributes: EIh
Number of entries:	3100
---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------
激活数据库
mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
aide使用方法
#执行命令对比差异
aide --check --config /etc/aide/aide.conf

Start timestamp: 2025-09-05 20:29:40 +0800 (AIDE 0.17.4)
AIDE found differences between database and filesystem!!
Ignored e2fs attributes: EIh

Summary:
  Total number of entries:	3100
  Added entries:		0
  Removed entries:		0
  Changed entries:		1
更新数据库
aide --update --config /etc/aide/aide.conf
mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db

堡垒机作用

image-20250914110258571

总结

  • sudo使用流程
  • alias命令 别名
  • 配置文件:~/.bashrc /etc/profile
  • md5效验方法 md5sum -c
  • aide工具安装使用
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐