问题:对于技术支持活动,技术人员必须使用客户提供的凭据登录客户系统,但为了确保安全性和 ISO 合规性,我们需要记录哪位技术人员连接到哪个系统。
当前设置:我已为此类客户支持活动设置了 ssh 堡垒主机 (Debian 12)。我们通过堡垒强制访问客户系统;每位技术人员在堡垒上都有一个帐户,并通过 ssh 密钥进行身份验证。
堡垒既可用于 ssh,也可用于 Web 访问客户系统。SSH 访问通过 SSH 跳转工具 (ssh -J) 执行,Web 访问通过 SSH SOCKS5 代理执行。
我们需要记录来自堡垒的每个出站 TCP 连接,至少包括发起连接的技术人员的用户名、目标 IP 地址和端口。
我们已经进行了审计,日志通过 RSyslog 被输入到 SIEM 中。当前的工作设置使用简单的审计配置来记录连接:
auditctl -a always, exit -S connect -F success=1
由于某些我尚不明白的原因,当用户使用堡垒作为跳转主机启动与客户系统的连接时,会记录 DNS 查询(具有正确的用户属性),但不会记录与目标主机的实际连接。
以下是我在审计日志中得到的内容:
Aug 20 15:26:09 bastion1 audisp-syslog: type=SYSCALL msg=audit(**1724167569.113:16994887**): arch=c000003e syscall=42 success=yes exit=0 a0=b a1=7f49a2dfa454 a2=10 a3=7ffe86122474 items=0 ppid=3840918 pid=3840929 auid=1002 uid=1002 gid=1002 euid=1002 suid=1002 fsuid=1002 egid=1002 sgid=1002 fsgid=1002 tty=(none) ses=5005 comm="sshd" exe="/usr/sbin/sshd" subj=unconfined key=(null) ARCH=x86_64 SYSCALL=connect AUID="firstname-lastname" UID="firstname-lastname" GID="firstname-lastname" EUID="firstname-lastname" SUID="firstname-lastname" FSUID="firstname-lastname" EGID="firstname-lastname" SGID="firstname-lastname" FSGID="firstname-lastname"
Aug 20 15:26:09 bastion1 audisp-syslog: type=SOCKADDR msg=audit(**1724167569.113:16994887**): saddr=02000035080808080000000000000000 SADDR={ saddr_fam=inet **laddr=8.8.8.8 lport=53** }
Aug 20 15:26:09 bastion1 audisp-syslog: type=PROCTITLE msg=audit(**1724167569.113:16994887**): proctitle=737368643A20726F646F6C666F2D73616363616E69205B707269765D
Aug 20 15:26:09 bastion1 audisp-syslog: type=EOE msg=audit(**1724167569.113:16994887**):
此 DNS 查询已记录,但没有有关实际 SSH 连接的日志。
关于 SOCKS 代理,auditd 似乎无法提供我们需要的日志,出站连接似乎是由 sshd 用户发起的。
关于如何解决这个问题有什么建议吗?
谢谢