프로세스(user1)는 어떻게 디렉터리(루트)에 로그를 기록합니까?

프로세스(user1)는 어떻게 디렉터리(루트)에 로그를 기록합니까?

내 서버(ubuntu 16.04 x86_64)에서 proftpd를 사용하고 있습니다.

proftpd 사용자로 proftpd가 실행되는 것을 볼 수 있습니다:

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

proftpd는 로그를 기록합니다 /var/log/proftpd. 하지만 루트만 이 디렉터리에 쓸 수 있습니다.

$ 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. proftpd는 어떻게 로그를 작성합니까?

  2. 맞습니다. proftpd 디렉토리의 소유자는 루트입니다. 어쩌면 proftpd여야 할까요?

  3. 파일(로그)에 읽을 수 있는 다른 권한이 없는 이유는 무엇입니까? 안전하지 않은가요?

답변1

  1. Unix의 다른 많은 서비스와 마찬가지로 ProFTPd는 로깅에 사용됩니다 syslog. syslog슈퍼유저 권한으로 실행되는 프로세스입니다. 이는 ProFTPd 자체가 로그 디렉터리에 파일을 생성할 필요가 없음을 의미합니다.

  2. 예. 이것은 필요합니다.이것을 바꾸지 마세요

  3. 일반적으로 기록된 모든 사용자 활동은 슈퍼유저만 액세스할 수 있습니다. 이는 사용자의 개인정보를 보호하기 위한 것입니다. 이것은 내 개인적인 의견입니다.

ProFTPd를 사용한 로깅에 대한 자세한 내용은 다음을 참조하세요.http://www.proftpd.org/docs/howto/Logging.html

일반적으로 설치한 서비스가 명백하게 오작동하지 않는 한 예상대로 실행된다고 가정합니다. 패키지 관리자에서 설치된 프로그램이라면 실행 중인 Unix 버전에서 테스트된 것이므로 오류가 발견되면 패키지 관리자에게 문의해야 합니다. 그러나 대부분의 경우 "버그"는 고도로 맞춤화된 시스템에서 실행하거나 극단적이거나 비정상적인 구성을 사용하여 문제가 발생한 결과입니다. 기본 설치는 잘못되는 경우가 거의 없으며 수행 중인 작업을 실제로 알고 있는 경우에만 "조정"해야 합니다.

그래서특히파일 및 디렉터리의 권한이나 소유권을 변경하는 데 사용됩니다.

관련 정보