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 对应的配置文件不同(默认多为 bash 或 zsh):

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

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
缩写含义(监控的文件属性)说明
ppermissions(权限)监控文件的读写执行权限(rwx)、SUID/SGID 标志、特殊权限(如粘滞位)等。
iinode number(inode 号)监控文件在文件系统中的唯一 inode 标识(inode 变化通常意味着文件被删除重建)。
nfilename(文件名)监控文件名及路径(防止文件被重命名或移动)。
uuser(所有者)监控文件所属用户(UID)的变化(防止未授权更改所有者)。
ggroup(所属组)监控文件所属组(GID)的变化(防止未授权更改所属组)。
ssize(大小)监控文件字节数的变化(内容增减会直接反映在大小上)。
mmtime(内容修改时间)监控文件内容最后修改的时间(stat 中的 mtime,内容变更会更新此时间)。
cctime(状态修改时间)监控文件元数据(权限、所有者等)最后修改的时间(stat 中的 ctime)。
aclAccess Control List(访问控制列表)监控文件的扩展 ACL 权限(超出传统 rwx 的精细化权限控制,如对特定用户的额外权限)。
selinuxSELinux context(SELinux 安全上下文)监控文件的 SELinux 安全上下文(仅在启用 SELinux 的系统中有效,如红帽、麒麟系统,防止安全上下文被篡改导致权限绕过)。
xattrsextended attributes(扩展属性)监控文件的扩展属性(如用户自定义元数据、安全标记等,常见于支持 xattrs 的文件系统如 ext4、xfs)。
sha256SHA-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社区

更多推荐