Rhel
在 RHEL 6.6 上將 SSH 身份驗證失敗隔離到自己的日誌文件中
這可能是不可能的,但我有一個案例,我們希望將 SSH 身份驗證失敗與 RHEL 6.6 機器上的標準 SSH 日誌分開記錄。
我知道我們可以使用
SyslogFacility
withsshd_config
來指定將日誌數據發送到何處,是否可以通過該方法僅發送SSH 身份驗證失敗?編輯:如果不在
sshd
orsshd_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); };