linux无原生ssh录屏功能,需tlog实现会话级自动录制、auditd完成内核级命令审计,二者配合方可满足等保及iso 27001合规要求。

Linux 本身不提供开箱即用的 SSH 会话录屏功能,所谓“监控+录屏”,本质是分层实现:会话级靠 tlog 或 asciinema,命令级靠 auditd,二者必须配合才能满足真实审计需求。单靠修改 .bash_history、开启 LogLevel VERBOSE 或依赖 script 命令,都存在绕过风险或信息缺失,无法通过等保、ISO 27001 等合规检查。
tlog 实现全自动会话捕获(生产推荐)
tlog 是专为安全审计设计的工具,能无缝集成 SSH 登录流程,自动录制完整交互过程(含键入节奏、光标移动、误按退格等),输出结构化 JSON 日志,支持按用户、时间、关键词检索回放。
- 编辑
/etc/ssh/sshd_config,添加一行:ForceCommand /usr/bin/tlog-rec-session,然后执行sudo systemctl restart sshd - 创建配置文件
/etc/tlog/conf.d/10-output.conf,内容为:{"output": {"type":"file","path":"/var/log/tlog/%Y-%m-%d-%H-%u.json"}} - 确保日志目录安全:
sudo mkdir -p /var/log/tlog && sudo chmod 0700 /var/log/tlog - 测试后,用
sudo tlog-play -u username --from '2026-07-07T10:00'回放指定用户某时段会话
auditd 记录所有命令执行(内核级不可绕过)
auditd 在内核层捕获 execve 系统调用,无论用户是否使用 bash、是否走 sudo 或 su、是否在脚本中执行命令,全部记录,且普通用户无法删除或篡改。
Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...
- 确认服务已启用:
systemctl enable --now auditd - 添加规则(x86_64):
auditctl -a always,exit -F arch=b64 -S execve -k user_commands - 持久化规则:写入
/etc/audit/rules.d/user-commands.rules,再运行augenrules --load - 查日志用:
ausearch -k user_commands | aureport -f -i,重点关注comm(命令名)、exe(二进制路径)、cwd(执行目录)字段
asciinema 辅助高保真协作与快速验证
适合培训复盘、跨团队共享操作过程,支持颜色、滚动、搜索命令、暂停复制文本,生成单个可分享的 JSON 文件,但需主动触发或配合 shell 初始化,不覆盖 ssh user@host cmd 这类非交互场景。
- 安装:
apt install asciinema(Debian/Ubuntu)或dnf install asciinema(RHEL/CentOS) - 录制特权会话:
asciinema rec -c "sudo -i" /var/log/audit/root_$(date +%s).cast - 本地回放:
asciinema play root_1720359120.cast;上传分享:asciinema upload root_1720359120.cast - 如需自动录制,可在
~/.bashrc中加判断逻辑(仅对交互式 bash 有效)
关键加固补充项
仅做录屏和命令记录还不够,必须配套权限与完整性控制:
- 所有审计日志目录(如
/var/log/tlog、/var/log/audit)设为0700,属主root:root - 配置
rsyslog将 audit 日志外发至独立日志服务器,防本地删改 - 禁用 root 直接 SSH 登录,统一通过普通用户 +
sudo操作,并将sudo日志写入/var/log/sudo.log - 定期校验日志完整性(如用
aureport --key user_commands --summary统计每日命令量,突变即告警)










