更改CentOS上的sshd日志文件位置?


14

如何更改sshdCentOS上的日志文件位置?sshd登录到/var/log/messages而不是/var/log/secure。如何更改设置,这样sshd将停止向其发送日志/var/log/messages


1
您一直在写那/var/log/message是真的位置吗?一般/var/log/messages
slm

1
@slm 这里有人/var/log/messages,也许OP既有;-)
安森

在我的ubuntu系统上,ssh登录处于/var/log/auth.log
Eric Wang

Answers:


18

请张贴您的sshd_config其他内容似乎已更新。一个库存的CentOS系统总是登录到/var/log/secure

$ sudo tail -f /var/log/secure
Feb 18 23:23:34 greeneggs sshd[3545]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"
Feb 18 23:23:36 greeneggs sshd[3545]: Failed password for root from ::1 port 46401 ssh2
Feb 18 23:23:42 greeneggs unix_chkpwd[3555]: password check failed for user (root)
Feb 18 23:23:42 greeneggs sshd[3545]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"
Feb 18 23:23:43 greeneggs sshd[3545]: Failed password for root from ::1 port 46401 ssh2
Feb 18 23:23:48 greeneggs sshd[3545]: Accepted password for root from ::1 port 46401 ssh2
Feb 18 23:23:48 greeneggs sshd[3545]: pam_unix(sshd:session): session opened for user root by (uid=0)
Feb 18 23:24:05 greeneggs sshd[3545]: Received disconnect from ::1: 11: disconnected by user
Feb 18 23:24:05 greeneggs sshd[3545]: pam_unix(sshd:session): session closed for user root
Feb 18 23:27:15 greeneggs sudo:     saml : TTY=pts/3 ; PWD=/home/saml ; USER=root ; COMMAND=/bin/tail /var/log/secure

通过/etc/ssh/sshd_config以下方式控制:

# Logging
# obsoletes QuietMode and FascistLogging
#SyslogFacility AUTH
SyslogFacility AUTHPRIV
#LogLevel INFO

以及以下内容/etc/rsyslog.conf

# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none                /var/log/messages

# The authpriv file has restricted access.
authpriv.*                                              /var/log/secure

你的问题

在您的评论之一中,您提到您的rsyslogd配置文件名为/etc/rsyslog.config。这不是该文件的正确名称,很可能是您的日志记录被搞砸的原因。将此文件的名称更改为/etc/rsyslog.conf,然后重新启动日志记录服务。

$ sudo service rsyslog restart

谢谢,我想知道是否将“ SyslogFacility AUTHPRIV”注释掉了。sshd如何知道默认值是什么?默认值是否存储在可以编辑的位置?
Jidrick

默认值在用于编译sshd可执行文件的源代码中。如果要覆盖默认值,则可以提供sshd命令行选项或编辑其配置文件。
2014年

@MarkPlotnick-是的,就像通常在配置文件中所做的一样(如上所示),默认值显示在配置文件中,但随后会被注释掉。因此ssh被编译LogLevelINFO默认设置。要改写它,您需要取消注释该行,然后更改其值。
slm

3

默认的sshdsyslog工具为AUTH,因此它将在syslog中登录到/var/log/messages

要将sshd日志记录到新文件,可以将其syslog工具更改为其他名称,然后配置syslog以将此新工具记录到新文件,即:

在sshd_config中,添加以下行:

SyslogFacility AUTHPRIV

然后在syslog.conf中:

authpriv.* /var/log/secure

@Jidrick-您的盒子出了点问题。它似乎是破碎的和丢失的东西。
slm

@Jidrick:您可以检查其他类似rsyslog吗?
cuonglm

@Gnouc- SyslogFacility AUTHPRIV在RH发行版中已经是默认设置。他们将其作为包装的一部分覆盖。
slm

@Gnouc是的,但是更改它似乎不起作用。
吉德里克,2014年

@Jidrick-将文件名更改/etc/rsyslog.config/etc/rsyslog.conf
slm
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.