Debian - /var/log 中缺少 auth.log

Ada*_*dam 6 logs

我正在 RaspberryPI 上学习 Debian。我最近安装了“logwatch”和“fail2ban”,这两个都很好用!

几天前我发现我没有文件“auth.log”但我有“auth.log.gz1”等(所以存档数据)

我用过命令:

touch auth.log
Run Code Online (Sandbox Code Playgroud)

创建此文件,而不是chown root:adm 更改其权限。

但是,该文件仍然无法正常工作 - 即使我通过 SSH 登录,在过去 2 天内我也看不到任何条目。

你能建议:

  1. 为什么这个文件不见了?去哪里找原因?
  2. 如何解决此问题,以便记录我所有的 SSH 连接(和攻击)?

附注。

pi@pi ~ $ uname -a
Run Code Online (Sandbox Code Playgroud)

Linux pi.local 3.10.25+ #622 PREEMPT Fri Jan 3 18:41:00 GMT 2014 armv6l GNU/Linux

And*_*ódi 13

fail2ban当我尝试在“最小”Ubuntu 20.04 LTS 映像上进行配置时,我遇到了这个问题。在 Ubuntu 上fail2ban查找/var/log/auth.log. 但是,在“最小”映像中,只有systemd“日志”设施可用,文件auth.log丢失并且fail2ban无法启动。为了恢复良好的旧日志文件,我安装了rsyslog

sudo apt-get install rsyslog

然后fail2ban开始正常工作。

应得的信用:这个解决方案的想法来自@Bloodden 的答案,这似乎有点不公平地被否决了......


Ort*_*kni 12

从 Debian 8 (Jessie) 开始,systemd默认安装。默认情况下,不再有/var/log/auth.log. 您可以使用以下命令查看 sshd 的日志:

journalctl -u ssh.service
Run Code Online (Sandbox Code Playgroud)


Gil*_*il' 5

手动创建文件不会执行任何操作:如果日志系统想要使用该文件,它将创建它。

也许作为软件包安装的一部分或者作为某些其他配置的一部分,您以某种方式更改了日志系统的配置。默认情况下,Debian 使用sysklogd,通过 配置/etc/syslog.confauth.log来自一行

auth,authpriv.*                 /var/log/auth.log
Run Code Online (Sandbox Code Playgroud)

也许您修改了/etc/syslog.conf,或者也许您切换到rsyslog(它比 sysklogd 更强大,但也更大、更复杂。