在 Ubuntu 12.04 中哪里可以找到 sshd 日志

在 Ubuntu 12.04 中哪里可以找到 sshd 日志

我刚刚安装了 Ubuntu 12.04。我正在尝试设置 ssh 公钥身份验证。不幸的是,它拒绝工作。在详细模式下运行 ssh 客户端,我可以看到公钥被拒绝。

~/.ssh/authorized_keys 存在并且似乎具有正确的权限等。

我想做的是阅读 sshd 日志以找出它抱怨的内容。但我找不到 Ubuntu 12.04 上 sshd 的日志记录位置。我尝试谷歌搜索并检查了 /var/log/auth.log 和 /var/log/syslog,但都没有显示 sshd 消息。我在哪里可以找到守护进程日志来弄清楚发生了什么?

谢谢。

答案1

sshd通常通过 syslog 进行记录。默认情况下,它会查找 AUTH 或 AUTHPRIV 设施,尽管您可以通过文件中的 SyslogFacility 配置选项进行修改sshd_config

要找出系统日志消息的去向,请查看/etc/syslog.conf,其中包含类似以下内容的行:

authpriv.*          /var/log/secure

此示例会将所有 AUTHPRIV 消息发送到/var/log/secure。您会在系统上发现类似的内容。

答案2

实际上它应该在 /var/log/auth.log 中:

root@ubu12:/var/log# fgrep ssh auth.log|wc -l
64

此外 - /etc/ssh/sshd_config:


# Logging
SyslogFacility AUTH
LogLevel INFO

但是您可以尝试检查和改变/etc/rsyslog.d的内容——50-default.conf已经注释掉的条目可能对调试目的有用:

#daemon.*                       -/var/log/daemon.log

最后还有另一个选择——在调试模式下运行 sshd -d

服务器将详细调试输出发送到标准错误,而不会将自身置于后台。服务器也不会分叉,并且只会处理一个连接。此选项仅用于服务器调试。多个 -d 选项可提高调试级别。最大为 3。

— 参见man sshd其他页面。

相关内容