Wie der Prozess (Benutzer1) das Protokoll in das Verzeichnis (Root) schreiben kann

Wie der Prozess (Benutzer1) das Protokoll in das Verzeichnis (Root) schreiben kann

Ich verwende proftpd auf meinem Server (Ubuntu 16.04 x86_64).

Ich sehe, dass proftpd unter dem proftpd-Benutzer ausgeführt wird:

$ ps aux | grep [p]roftpd
proftpd  26334  0.0  0.1 112656   716 ?        Ss   04:39   0:00 proftpd: (accepting connections)

proftpd schreibt Protokolle in /var/log/proftpd. Aber in dieses Verzeichnis schreiben kann nur root:

$ ls -la /var/log | grep [p]roftpd
drwxr-xr-x  2 root                adm      4096 Jun  1 04:39 proftpd
ls -la /var/log/proftpd
total 76
drwxr-xr-x 2 root adm     4096 Jun  1 04:39 .
drwxrwxr-x 7 root syslog  4096 Jun  1 04:39 ..
-rw-r----- 1 root adm        0 May 15 15:53 controls.log
-rw-r----- 1 root adm     7611 Jun  1 09:54 proftpd.log
-rw-r----- 1 root adm    23207 May 29 04:39 proftpd.log.1
-rw-r----- 1 root adm     3649 May 21 04:39 proftpd.log.2.gz
-rw-r----- 1 root adm      521 Jun  1 09:42 xferlog
-rw-r--r-- 1 root adm    17656 May 31 22:55 xferlog.1
-rw-r--r-- 1 root root       0 Jun  1 04:39 xferreport
  1. Wie schreibt Proftpd Protokolle?

  2. Ist es richtig, dass der Besitzer des Proftpd-Verzeichnisses root ist? Vielleicht sollte es proftpd sein?

  3. Warum haben andere keine Leseberechtigungen für Dateien (Protokolle). Ist das unsicher?

Antwort1

  1. ProFTPd verwendet wie viele andere Dienste unter Unix syslogzur Protokollierung. syslogist ein Prozess, der mit Superuser-Berechtigungen ausgeführt wird. Dies bedeutet, dass ProFTPd selbst niemals Dateien im Protokollverzeichnis erstellen muss.

  2. Ja, es ist so, wie es sein sollte.ÄNDERN SIE DAS NICHT

  3. Im Allgemeinen sollten alle protokollierten Benutzeraktivitäten nur für den Superuser zugänglich sein. Dies dient dem Schutz der Privatsphäre der Benutzer. Dies ist meine persönliche Meinung.

Weitere Informationen zum Protokollieren mit ProFTPd finden Sie unterhttp://www.proftpd.org/docs/howto/Logging.html

Gehen Sie im Allgemeinen davon aus, dass sich ein von Ihnen installierter Dienst wie vorgesehen verhält, es sei denn, er verhält sich offensichtlich falsch. Wenn es sich um ein Programm handelt, das von einem Paketmanager installiert wurde, wurde es offensichtlich auf der von Ihnen verwendeten Unix-Version getestet, und wenn Sie einen Fehler finden, sollten Sie den Paketbetreuer darüber informieren. In den meisten Fällen sind „Fehler“ jedoch das Ergebnis einer Ausführung auf einem stark angepassten System oder mit extremen oder ungewöhnlichen Konfigurationen und einem Fehler. Eine Standardinstallation ist sehr selten falsch und sollte nur dann „optimiert“ werden, wenn Sie wirklich wissen, was Sie tun.

Das gehtbesonderszum Ändern von Berechtigungen oder Eigentumsrechten für Dateien und Verzeichnisse.

verwandte Informationen