1. 别名
- 应用场景
-
- 命令精简
- 给危险命令加上保险
1.1. 检查别名
[root@kylin210 ~]# alias
alias cp='cp -i'
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'
[root@kylin210 ~]#
1.2. 配置别名
- 命令行配置(临时生效)
alias 别名='命令'
- 写入/etc/profile,(永久生效)
[root@kylin210 ~]# vim /etc/profile
alias grep='grep --color'
[root@kylin210 ~]# source /etc/profile
# ubuntu写入到~/.bashrc中
- 给rm配置别名,只要运行rm命令就输出:请不要使用rm,请使用mv
1.临时命令行配置
alias rm='echo please do not use rm'
\rm:可以临时取消别名
2.永久写入到/etc/profile中
3.重新登录后恢复到rm='rm -i'
原因:~/.bashrc中的别名优先生效
2. 系统校验检查
2.1. MD5
- 检查文件内容是否改变
- 下载获取的文件是否与官方一致
- 哈希算法
- 指纹检验
# 将md5sum写入到文件
[root@kylin210 /dir]# md5sum /dir/test.txt > /study/test.txt.md5
[root@kylin210 /dir]# echo 123 > test.txt
# 修改文件内容后再校验
[root@kylin210 /dir]# md5sum -c /study/test.txt.md5
/dir/test.txt: 失败
md5sum: 警告:1 个校验和不匹配
2.2. aide
- 通过配置文件配置监控哪个目录,哪些文件
- 监控md5/sha,监控文件属性信息
2.2.1. 麒麟红帽
- 安装aide软件
yum install aide -y
- 进行配置
/etc/aide.conf
配置文件分为2个部分
1.创建各种的监控指标
2.指定目录或文件,并搭配上面的集合
FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256
p:permission权限
i:inode号
n:硬链接数量
u:user用户
g:group用户组
s:size大小
m:时间 文件内容变化时间
c:ctime 属性变化时间
acl+selinux: 特殊权限
xattrs: 特殊属性
/etc/ FIPSR
- 根据配置文件生成初始的指纹信息库(压缩包)
[root@kylin210 ~]# aide --init
Start timestamp: 2025-05-08 11:18:24 +0800 (AIDE 0.16.2)
AIDE initialized database at /var/lib/aide/aide.db.new.gz
Number of entries: 1155
---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------
/var/lib/aide/aide.db.new.gz
MD5 : GY4VcDT9x0gAozANZFhIWg==
SHA1 : K+qXUKLA0oKdbkkxYivNmPAGkUc=
RMD160 : PZS7PbNWFcM9RnZqzjKesR0YvQE=
TIGER : NWjNU0CE23Kl4i2/orayq0aoaC6TO0YQ
SHA256 : gJ+5BCRdd2XhrKvL/uRtoLM5C7GZ3LIK
+BrHiI7Z7bk=
SHA512 : Bris8rJRfFUzi7UokfWouf8sjEIx+PmT
WU5sAo8oPWMe50N9co67Om6dvSuukQZp
ob5A2SYCtuJr5fe7I/oiVA==
SM3 : Yj75mwGFtu0YgrU2y8jt8Y+dNaffw8et
CsROpxIsfU0=
End timestamp: 2025-05-08 11:18:24 +0800 (run time: 0m 0s)
# 修改文件名
[root@kylin210 ~]# mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
- 使用
[root@kylin210 ~]# aide --check
Start timestamp: 2025-05-08 11:45:58 +0800 (AIDE 0.16.2)
AIDE found differences between database and filesystem!!
Summary:
Total number of entries: 1155
Added entries: 0
Removed entries: 0
Changed entries: 3
---------------------------------------------------
Changed entries:
---------------------------------------------------
f = ... mc..... : /etc/hostname
f = ... mc..... : /etc/localtime_tmp
f > ... mci.C.. : /etc/passwd
---------------------------------------------------
Detailed information about changes:
---------------------------------------------------
File: /etc/hostname
Mtime : 2025-05-03 15:12:47 +0800 | 2025-05-08 11:45:01 +0800
Ctime : 2025-05-03 15:12:47 +0800 | 2025-05-08 11:45:01 +0800
File: /etc/localtime_tmp
Mtime : 2025-05-08 11:15:01 +0800 | 2025-05-08 11:45:01 +0800
Ctime : 2025-05-08 11:15:01 +0800 | 2025-05-08 11:45:01 +0800
File: /etc/passwd
Size : 1927 | 1934
Mtime : 2025-05-07 16:07:29 +0800 | 2025-05-08 11:45:51 +0800
Ctime : 2025-05-07 16:07:29 +0800 | 2025-05-08 11:45:51 +0800
Inode : 34470127 | 34893767
SHA256 : GTKqcTZbo7FtMUCxcpoXrndpHYcJO3FT | 1ZRlXvcF+5vMKgtOw6S06rO9iNxONklt
91vuoFUqM+A= | ePMD5WepX/E=
---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------
/var/lib/aide/aide.db.gz
MD5 : GY4VcDT9x0gAozANZFhIWg==
SHA1 : K+qXUKLA0oKdbkkxYivNmPAGkUc=
RMD160 : PZS7PbNWFcM9RnZqzjKesR0YvQE=
TIGER : NWjNU0CE23Kl4i2/orayq0aoaC6TO0YQ
SHA256 : gJ+5BCRdd2XhrKvL/uRtoLM5C7GZ3LIK
+BrHiI7Z7bk=
SHA512 : Bris8rJRfFUzi7UokfWouf8sjEIx+PmT
WU5sAo8oPWMe50N9co67Om6dvSuukQZp
ob5A2SYCtuJr5fe7I/oiVA==
SM3 : Yj75mwGFtu0YgrU2y8jt8Y+dNaffw8et
CsROpxIsfU0=
End timestamp: 2025-05-08 11:45:58 +0800 (run time: 0m 0s)
🔄 更新数据库(确认变更合法后)
如果你已经确认某些更改是合法的(如系统升级、配置修改),可以更新数据库以反映新状态:
aide --update
2.2.2. ubuntu/debian
一、安装 AIDE:
apt install aide
安装完成后会自动初始化数据库,并设置定时任务。
二、AIDE 配置文件用文本编辑器打开它进行自定义配置:
vim /etc/aide/aide.conf
🔍 示例配置说明:
# 主配置文件示例
database=file:/var/lib/aide/aide.db.gz
database_out=file:/var/lib/aide/aide.db.new.gz
# 定义监控规则
NORMAL = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256
# 应用规则到目录
/etc = NORMAL
/usr = NORMAL
/bin = NORMAL
/sbin = NORMAL
# 排除目录
!/var/log/
!/tmp/
!/proc/
!/sys/
✅ 常见规则标志解释:
标志 | 含义 |
| 权限(permissions) |
| inode |
| 文件名 |
| 所有者(user) |
| 组(group) |
| 文件大小 |
| 修改时间(mtime) |
| 创建时间(ctime) |
| 使用 SHA-256 哈希校验文件内容 |
| 访问控制列表 |
| 扩展属性 |
可以根据需要增删监控路径或更改规则。
🛠️ 三、初始化数据库
首次使用前必须初始化数据库:
aide --init --config /etc/aide/aide.conf
这将生成一个初始数据库文件 /var/lib/aide/aide.db.new
建议将其重命名为正式数据库:
cp /var/lib/aide/aide.db.new /var/lib/aide/aide.db
🔍 四、手动执行检查
运行以下命令来检查系统文件是否被修改:
aide --check
如果发现任何变化,终端将输出详细差异信息。
🔄 五、更新数据库(确认变更合法后)
如果你已经确认某些更改是合法的(如系统升级、配置修改),可以更新数据库以反映新状态:
aide --update
这将生成新的数据库文件 /var/lib/aide/aide.db.updated
,你可以手动替换旧数据库:
sudo cp /var/lib/aide/aide.db.updated /var/lib/aide/aide.db
🕹️ 六、自动定期检查(推荐使用 cron)
为了持续监控系统,建议使用 cron
自动执行检查并发送邮件通知。
1. 编辑 root 用户的 crontab:
crontab -e
2. 添加如下行(每天凌晨 2:00 执行检查):
0 2 * * * /usr/sbin/aide --check | mail -s "AIDE Integrity Check Report" your_email@example.com
注意:你需要安装邮件工具如 mailutils
或 ssmtp
才能发送邮件。
安装邮件工具示例(Debian/Ubuntu):
apt install mailutils
📋 七、查看 AIDE 日志
AIDE 默认不会写入日志文件,但你可以将输出重定向到文件:
sudo aide --check > /var/log/aide.log 2>&1
或者结合 cron
定期记录:
0 2 * * * /usr/sbin/aide --check >> /var/log/aide.log 2>&1
🧪 八、测试验证(可选)
你可以手动修改某个受监控的文件(例如 /etc/hosts
)来测试 AIDE 是否能检测到变化:
echo "test modification" | sudo tee -a /etc/hosts
sudo aide --check
你应该能看到类似如下输出:
AIDE found differences between database and filesystem!!
九、总结常用命令速查表
操作 | 命令 |
安装 AIDE |
|
初始化数据库 |
|
手动检查系统完整性 |
|
更新数据库 |
|
替换数据库文件 |
|
设置定时检查(crontab) |
|
查看帮助 |
|
3. 堡垒机
堡垒机(Bastion Host),也称为跳板机或运维审计系统,是一种用于集中管理服务器访问权限、保障运维操作安全的网络安全设备或系统。
3.1. 堡垒机的核心作用
堡垒机主要用于解决以下问题:
问题 | 堡垒机解决方案 |
多人同时访问服务器,权限混乱 | 集中账号管理和权限控制 |
运维操作不可追溯 | 操作记录与审计 |
密码泄露风险高 | 统一认证与密钥管理 |
不安全的操作行为无法监控 | 实时监控与告警机制 |
3.2. 堡垒机的主要功能
- 统一入口访问控制
-
- 所有对服务器的访问必须通过堡垒机进行,形成一个“唯一的入口”。
- 支持多种协议:SSH、RDP、Telnet、FTP、SFTP、VNC等。
- 身份认证
-
- 支持多因素认证(如用户名/密码 + 动态令牌 + 生物识别)。
- 支持AD/LDAP集成,实现统一身份管理。
- 权限管理
-
- 精细化授权:按用户、角色、资源分配不同的访问权限。
- 可控的最小权限原则(Principle of Least Privilege)。
- 操作审计
-
- 全过程录像:图形界面操作可录屏,命令行操作可录屏+命令级审计。
- 审计日志包括时间、用户、IP、操作内容等,便于事后追责。
- 会话管理
-
- 实时监控用户会话,支持强制断开异常连接。
- 支持会话共享,方便协作和监督。
- 自动化运维
-
- 支持脚本下发、批量执行、定时任务等功能。
- 提升效率的同时确保安全性。
- 安全防护
-
- 防止暴力破解、非法登录尝试。
- 异常行为检测与告警。
3.3. 堡垒机的应用场景
- 企业数据中心:集中管理数百上千台服务器。
- 云环境:对接AWS、阿里云、腾讯云等平台,统一管理云主机。
- 外包运维:对外包人员的操作进行严格管控和审计。
- 合规要求:满足等保2.0、ISO 27001、GDPR等法规要求。
3.4. 常见堡垒机品牌(国内外)
国内:
- 华为云堡垒机
- 阿里云云堡机
- 腾讯云堡垒机
- 安恒信息(DBAPPSecurity)
- 启明星辰
- 绿盟科技
国外:
- Palo Alto Networks Prisma Access(含堡垒机功能)
- IBM Security Guardium(偏向数据库堡垒)
- SolarWinds Bastion Host
堡垒机是保障服务器运维安全的重要工具,通过统一访问控制、身份认证、操作审计等方式,防止误操作、恶意行为和数据泄露。
3.5. 离线安装堡垒机
从飞致云社区 下载最新的 linux/amd64 离线包, 并上传到部署服务器的 /opt 目录
3.5.1. 安装部署
cd /opt
tar -xf jumpserver-ce-v4.9.0-x86_64.tar.gz
cd jumpserver-ce-v4.9.0-x86_64
# 根据需要修改配置文件模板, 如果不清楚用途可以跳过修改
cat config-example.txt
# 安装
./jmsctl.sh install
# 启动
./jmsctl.sh start
安装完成后 JumpServer 配置文件路径为: /opt/jumpserver/config/config.txt
cd jumpserver-ce-v4.9.0-x86_64
# 启动
./jmsctl.sh start
# 停止
./jmsctl.sh down
# 卸载
./jmsctl.sh uninstall
# 帮助
./jmsctl.sh -h
3.5.2. 访问
安装成功后,通过浏览器访问登录 JumpServer
地址: http://<JumpServer服务器IP地址>:<服务运行端口>
用户名: admin
密码: ChangeMe