질문 옆에"사용자 이름이 sudoers 파일에 없습니다. 이 이벤트가 보고됩니다.” 오류의 프로그래밍 측면을 설명하고 몇 가지 해결 방법을 제안했습니다. 이 오류가 무엇을 의미하는지 궁금합니다.
X is not in the sudoers file. This incident will be reported.
오류의 이전 부분에서는 오류를 명확하게 설명합니다. 그런데 두 번째 부분에 "이 오류는 보고됩니다"라고 되어 있나요? ! 그런데 왜? 오류가 보고되는 이유는 무엇이며 오류가 보고되는 위치는 무엇입니까? 누구에게? 저는 사용자이자 관리자이지만 어떤 보고서도 받지 못합니다 :)!
답변1
시스템 관리자는 권한이 없는 사용자가 실행 명령을 사용하려고 시도했지만 실패하는 경우를 궁금해할 수 있습니다 sudo
. 이런 일이 발생하면 신호일 수 있습니다.
- 궁금해하는 합법적인 사용자가 한번 시도해 보거나
- "나쁜" 일을 하려는 해커입니다.
sudo
이를 자체적으로 구별할 수 있는 방법이 없기 때문에 실패한 사용 시도는 sudo
관리자에게 알려지게 됩니다.
sudo
시스템 구성 방식 에 따라 모든 사용 시도(성공 또는 실패) sudo
가 기록됩니다. 성공적인 시도는 감사 목적으로 기록되며(누가 언제 무엇을 했는지 추적할 수 있음), 실패한 시도는 보안 목적으로 기록됩니다.
내가 가지고 있는 상당히 재고가 있는 Ubuntu 설정에서는 이것이 login 입니다 /var/log/auth.log
.
사용자가 잘못된 비밀번호를 세 번 제공하거나 비밀번호가 파일에 없으면 sudoers
이메일이 루트로 전송됩니다(구성에 따라 sudo
아래 참조). 이것이 바로 "문제가 보고될 것입니다"라는 의미입니다.
이메일에는 눈에 띄는 제목이 있습니다.
Subject: *** SECURITY information for thehostname ***
메시지 본문에는 로그 파일의 관련 줄이 포함되어 있습니다.
thehostname : Jun 22 07:07:44 : nobody : user NOT in sudoers ; TTY=console ; PWD=/some/path ; USER=root ; COMMAND=/bin/ls
(여기서 사용자는 nobody
루트로 실행을 시도 ls
하지만 파일에 sudo
없기 때문에 실패합니다 .)sudoers
(로컬) 메일이 시스템에 설정되어 있지 않으면 이메일이 전송되지 않습니다.
이 모든 항목은 구성 가능하며 기본 구성의 로컬 변형은 Unix 변형에 따라 다를 수 있습니다.
매뉴얼의 mail_no_user
설정(및 관련 mail_*
설정) 을 살펴보십시오 sudoers
(아래 주요 내용).
mail_no_user
설정하면 이메일이 전송됩니다메일투 사용자에게
sudoers
호출 사용자가 파일에 없는 경우 .이 플래그는 기본적으로 켜져 있습니다..
답변2
Debian 및 그 파생 제품에서 sudo
기록된 이벤트 보고서 에는 /var/log/auth.log
로그인한 사용자와 사용된 인증 메커니즘을 포함한 시스템 인증 정보가 포함되어 있습니다.
$ sudo su
[sudo] password for regularjohn:
regularjohn is not in the sudoers file. This incident will be reported.
[as root]
$ tail -n 1 /var/log/auth.log
Jun 21 16:30:26 marvin sudo: regularjohn : user NOT in sudoers ; TTY=pts/19 ; PWD=/home/regularjohn ; USER=root ; COMMAND=/bin/su
이 로그 파일은 일반적으로 adm
그룹의 사용자, 즉 액세스 권한이 있는 사용자만 액세스 할 수 있습니다.시스템 모니터링 작업:
$ ls -la /var/log/auth.log
-rw-r----- 1 syslog adm 76189 Jun 21 16:30 /var/log/auth.log
~에서데비안 위키:
그룹 adm은 시스템 모니터링 작업에 사용됩니다. 이 그룹의 구성원은 /var/log에 있는 많은 로그 파일을 읽을 수 있고 xconsole을 사용할 수 있습니다. 역사적으로 /var/log는 /usr/adm(이후에는 /var/adm)이었으므로 그룹 이름이 되었습니다.
그룹의 사용자는 adm
일반적으로 관리자입니다.su
, 이 그룹 권한은 . 없이 로그 파일을 읽을 수 있도록 설계되었습니다 .
기본적으로 로깅을 위해 sudo
Syslog 도구를 사용합니다.auth
. 또는의 또는 옵션을 사용하여 sudo
의 로깅 동작을 수정할 수 있습니다 .logfile
syslog
/etc/sudoers
/etc/sudoers.d
- 이
logfile
옵션은 로그 파일의 경로를 설정합니다sudo
. - 이
syslog
옵션은 다음 조건에서 Syslog 도구를 설정합니다.syslog(3)
로깅에 사용됩니다.
다음 구성 섹션이 있으면 syslog auth
도구가 다음으로 리디렉션됩니다./var/log/auth.log
etc/syslog.conf
auth,authpriv.* /var/log/auth.log
답변3
기술적으로 이것은 별로 의미가 없습니다. 전부는 아니지만 많은 다른 소프트웨어 로그 로그인, 실패 또는 기타 상황. 예를 들면 다음 sshd
과 su
같습니다.
Jun 21 17:52:22 somehost sshd[25807]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=::1 user=root
Jun 21 17:52:22 somehost sshd[25807]: Failed password for root from ::1 port 37268 ssh2
Jun 21 17:52:23 somehost sshd[25807]: Connection closed by ::1 port 37268 [preauth]
Jun 21 17:52:28 somehost su[25809]: pam_unix(su:auth): authentication failure; logname= uid=1000 euid=0 tty=/dev/pts/15 ruser=someuser rhost= user=root
Jun 21 17:52:28 somehost su[25809]: pam_authenticate: Authentication failure
Jun 21 17:52:28 somehost su[25809]: FAILED su for root by someuser
또한 많은 시스템에는 과도한 인증 오류를 감지하여 가능한 무차별 대입 시도를 처리하거나 해당 정보를 사용하여 문제가 발생한 후 사건을 재구성하는 일종의 자동화된 기능이 있습니다.
sudo
여기서는 특별히 특별한 일은 없습니다. 모든 메시지가 의미하는 바는 저자가 sudo
우연히 사용할 수 없는 명령을 실행하는 사용자와 통신할 때 일종의 급진적인 철학을 채택한 것 같다는 것입니다.
답변4
이는 누군가가 관리자 권한으로 명령을 사용하려고 sudo
하지만 명령을 사용할 수 있는 권한이 없음을 의미합니다(sudoers 파일에 나열되어 있지 않기 때문입니다). 이는 해킹 시도이거나 다른 유형의 보안 위험일 수 있으므로 이 메시지는 해당 시도가 sudo
시스템 관리자에게 보고되어 조사할 수 있음을 의미합니다.