Ubuntu 14.04 Systemprotokollierung

Ubuntu 14.04 Systemprotokollierung

Ich habe einen Ubuntu 14.04 Server (von einem Ubuntu 12.04 Server) eingerichtet, wollte heute aber nachsehen, auth.logaber diese Datei wird nicht verwendet. Es scheint, dass ´syslog´ gelöscht wurde.

Wie loggt sich Ubuntu 14.04 ein? Ich brauche das für einen Server.

Danke schön.

Antwort1

14.04 verwendet rsyslog. Als ich von 12.04 auf 14.04 aktualisiert habe, musste ich den Besitzer der Protokolldateien von /var/login rootändern syslog.

(In /etc/rsyslog.confder Eigentümer ist definiert als

$FileOwner syslog
$FileGroup adm

)

Sie sollten auch nachsehen, /etc/rsyslog.d/50-default.confwo definiert ist, welche Ereignisse in welche Dateien protokolliert werden. Dort gibt es auch eine Zeile für /var/log/syslog. Möglicherweise ist diese auskommentiert.

Antwort2

Ich habe gerade eine brandneue Installation von Ubuntu 14.04 mit dem offiziellen Servermedium durchgeführt.

Rsyslog wurde installiert und eine auth.loggültige Logdatei mit der Standardkonfiguration. Sie wird durch die Datei/etc/rsyslog.d/50-default.conf

Wenn Sie kein Auth.log haben, muss ich davon ausgehen, dass Sie einen der folgenden Schritte ausgeführt haben:

  • habe die Konfiguration geändert
  • einen anderen Syslog-Daemon als rsyslog verwendet
  • habe ein Ubuntu-Installationsprogramm verwendet, das andere Standardeinstellungen festgelegt hat.

Ohne genau zu wissen, welchen Syslog-Daemon Sie verwenden, ist dies schwer zu sagen.

Wenn Sie rsyslog verwenden, sehen Sie sich Ihr /etc/rsyslog.confund alle darin enthaltenen Dateien an /etc/rsyslog.d. Sehen Sie nach, wo die auth,authpriv.*-Meldungen protokolliert werden.

Antwort3

Wenn Sie eine letzte Nachricht wie diese finden in /var/log/syslog:

Dec 29 19:27:32 host rsyslogd-2039: 
Could no open output pipe '/dev/xconsole': 
No such file or directory [try http://www.rsyslog.com/e/2039 ]

dann ist das der Übeltäter. Das liegt daran, dass die Standardversion von /etc/rsyslog.d/50-default.confUbuntu 14.04.1 LTS (oder zumindest eine frühere Version, die in Upgrades beibehalten wird) erwartet, dass Sie /dev/xconsolezur Fehlerüberwachung verwenden, aber das ist in Headless-Serverumgebungen einfach nicht verfügbar.

Um dies zu beheben, deaktivieren Sie den entsprechenden Abschnitt in /etc/rsyslog.d/50-default.conf, sodass es folgendermaßen aussieht:

# daemon.*;mail.*;\
#        news.err;\
#        *.=debug;*.=info;\
#        *.=notice;*.=warn       |/dev/xconsole

Starten Sie dann rsyslog ( sudo service rsyslog restart) neu und die Protokolldateien sollten jetzt funktionieren.

Quelle:diese Antwortzur AskUbuntu SE-Frage "Fehlendes /dev/xconsole führt zum Stoppen von rsyslog und allen anderen Diensten".

Antwort4

Dieses Problem trat bei mir auf, als ich ein brandneues Ubuntu 14.04 installierte und fail2banSSH-Anmeldungen aktivierte.

Ubuntu 14.04 verwendet rsyslogmit Standardbenutzer syslogund -gruppe adm. Das /var/logVerzeichnis verfügt jedoch über Berechtigungen root:root 0755, was bedeutet, dass rsyslog im Verzeichnis keine neue Protokolldatei wie die /var/log/auth.logDatei erstellen kann.

Es gibt mehrere Möglichkeiten, dieses Problem zu lösen.

/var/log/Für alle Benutzer beschreibbar machen

sudo chmod 0777 /var/log

Ändern Sie den Besitzer/die Gruppe von/var/log

sudo chown syslog:adm /var/log
sudo chmod 0775 /var/log

Berühren Sie /var/log/auth.logund ändern Sie den Besitzer/die Gruppe insyslog:adm

sudo touch /var/log/auth.log
sudo chown syslog:syslog /var/log/auth.log

Benutzer/Gruppe ändern rsyslog, unter der ausgeführt wird (nicht empfohlen)

editor /etc/rsyslog.conf
$FileOwner root
$FileGroup root

verwandte Informationen