多个 SFTP 服务器共享常见的 chroot 路径日志记录问题

多个 SFTP 服务器共享常见的 chroot 路径日志记录问题

我正在使用多个 EC2 实例设置一个 SFTP 服务,以便在 AWS 上使用通用 EFS 共享(安装在/efs/sftp)实现高可用性。

            ,--------,
            |        |
            |  SFTP  |-------,
 -----      |________|       |    ,-----------------,
| NLB |                      |    |                 |
 -----                       |----| EFS (/efs/sftp) |
            ,--------,       |    |_________________|
            |        |       |
            | SFTP   |-------'
            |________|

我正在使用带有 SFTP 的 chroot 来强制用户只能访问/efs/sftp。为了记录 chroot 的活动,我创建了/efs/sftp/dev,并在其中使用imuxsock( /efs/sftp/dev/log) 配置了 rsyslog 套接字。

我主要按照这个博客来配置我的 SFTP 服务器。(https://www.the-art-of-web.com/system/sftp-logging-chroot/)。

设置的一个问题是,由于两台服务器具有相同的配置(对于rsyslogsftp) ,因此两个 rsyslogs 实例都会从 获得日志/efs/sftp/dev/log。两台服务器不会将相同的日志写入 吗/var/log/sftp.log创建套接字的 rsyslog 实例是唯一能够在 chroot 中记录活动的实例。

这些实例的日志(/var/log/sftp.log)被传输到集中式日志服务器(Splunk)并最终会产生重复。

避免这种重复的最佳选择是什么?从两个服务器上的 chroot SFTP 活动获取日志的最佳方法是什么?

编辑:我今天尝试了一下,发现只有一台服务器能够获取日志。更新了问题。

相关内容