Rhel

在 RHEL 6.6 上將 SSH 身份驗證失敗隔離到自己的日誌文件中

  • December 3, 2015

這可能是不可能的,但我有一個案例,我們希望將 SSH 身份驗證失敗與 RHEL 6.6 機器上的標準 SSH 日誌分開記錄。

我知道我們可以使用SyslogFacilitywithsshd_config來指定將日誌數據發送到何處,是否可以通過該方法發送SSH 身份驗證失敗?

編輯:如果不在sshdorsshd_config中,如何在系統日誌端完成?

rsyslog使這相對容易,因為您可以匹配到達的任何消息的各個方面。

包括這樣的片段(在我的情況下,我將*.conf文件放入/etc/rsyslog.d/):

if $programname == 'sshd' then {
   if $msg contains 'Invalid user' then { # adjust to your needs
       *.* -/var/log/sshd-fails.log
   }
   stop # discard all other messages from sshd
}

文件可以在這裡找到。

Syslog 絕對是實現這一目標的方式。如何編寫規則取決於您使用的是 rsyslog 還是 syslog-ng,但對於 syslog-ng,請將以下內容添加到/etc/syslog-ng/syslog-ng.conf文件中。

destination ssh_auth_fail { file("/path/to/file.log"); };
filter f_ssh_auth_fail { message("regex to match desired lines"); };
log { source(src); filter(f_ssh_auth_fail); destination(ssh_auth_fail); };

引用自:https://unix.stackexchange.com/questions/245449