linux系统本身不提供终端操作录像功能,但tlog是专为审计设计的成熟方案,能完整记录用户输入、命令输出、环境变量和时序信息;需确认系统兼容性、安装依赖、通过yum或apt安装tlog、配置sshd强制命令启用自动录制、设置json格式结构化日志存储,并用tlog-play回放验证。

Linux系统本身不提供终端操作录像功能,但Tlog是专为审计设计的成熟方案,能完整记录用户输入、命令输出、环境变量和时序信息,适合新手按步骤落地。
确认系统兼容性与基础依赖
Tlog支持主流发行版(RHEL/CentOS 7+、Ubuntu 18.04+、Debian 10+),安装前需确保:
- systemd服务可用(
systemctl --version≥ 219) - 已安装基础编译工具(CentOS系:
yum install -y gcc make wget json-c-devel systemd-devel;Ubuntu系:apt install -y build-essential libjson-c-dev libsystemd-dev) - 用户具备root权限或sudo能力
安装Tlog(推荐二进制包方式,避免源码编译)
多数现代发行版已将Tlog纳入官方仓库或EPEL/PPA:
- RHEL/CentOS:启用EPEL后运行
yum install -y tlog - Ubuntu/Debian:添加PPA并安装
sudo add-apt-repository ppa:scribery/tlog && sudo apt update && sudo apt install -y tlog - 安装完成后验证:
tlog-rec --version和tlog-play --version应正常输出版本号
配置自动会话录制(SSH登录即触发)
目标是让所有SSH用户登录后自动启用Tlog,无需手动执行命令:
- 编辑
/etc/ssh/sshd_config,添加或修改一行:ForceCommand /usr/bin/tlog-rec-session - 重启SSH服务:
sudo systemctl restart sshd - (可选但推荐)限制绕过风险:将目标用户shell替换为tlog入口,例如
sudo usermod -s /usr/bin/tlog-rec-session alice
设置结构化日志存储路径
默认Tlog写入systemd journal,但审计场景建议存为带时间与用户名的JSON文件,便于归档与检索:
- 创建配置目录:
sudo mkdir -p /etc/tlog/conf.d - 新建
/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
验证录制与回放流程
完成配置后,用普通用户SSH登录一次,再退出:
- 检查日志文件是否生成:
ls -l /var/log/tlog/$(date +%Y-%m-%d)*.json - 回放最近一次会话(需sudo):
sudo tlog-play -u $USER - 或指定文件回放:
sudo tlog-play -f /var/log/tlog/2026-05-07-15-alice.json - 回放中按空格暂停,↑↓调节速度,q退出
注意:Tlog默认不记录密码明文输入(受PAM保护),如需开启终端输入记录,需额外配置/etc/tlog/conf.d/20-input.conf并明确接受安全风险。











