특정 사용자에 대한 PAM 로그 메시지를 생략하는 방법(pam_succeed_if Quiet)

특정 사용자에 대한 PAM 로그 메시지를 생략하는 방법(pam_succeed_if Quiet)

Fail2ban을 모니터링하기 위해 모니터링 에이전트( telegraf)를 사용하고 있습니다. 불행하게도 를 실행하려면 슈퍼유저 권한이 필요하며 fail2ban-client, 그 결과 10초마다 24개의 syslog 메시지가 생성됩니다. 계산해 보면 제 syslog는 완전 엉망입니다.

가능하다면 telegraf에 의해서만 발생하는 다음 메시지를 시스템 로그에서 억제하고 싶습니다.

sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
sudo: pam_unix(sudo:session): session closed for user root

/etc/pam.d/sudo나는 이러한 메시지를 억제 하기 위해 사용자 정의 "규칙"을 사용해 보았 으나 성공하지 못했습니다.

# cat /etc/pam.d/sudo
#%PAM-1.0

session    required   pam_env.so readenv=1 user_readenv=0
session    required   pam_env.so readenv=1 envfile=/etc/default/locale user_readenv=0
@include common-auth
@include common-account
session [default=ignore] pam_succeed_if.so quiet uid = 0 user = root ruser = telegraf
@include common-session-noninteractive

로 시작하는 줄만 session파일에 추가됩니다. 이 솔루션은특정 사용자에 대한 auth.log에서 sudo PAM 메시지를 어떻게 중지합니까?

그러나 로그 메시지는 여전히 나타납니다 /var/log/auth.log.journalctl -xe

나는 이것을 플래그(에 있음 ) quiet_success와 마찬가지로 시도했습니다 . 또한 makefail toexecute를 사용하면 대화형 tty가 필요하기 때문인 것 같습니다.quietman pam_succeed_ifsuccess=1telegraffail2ban-client

이는 debug플래그를 사용하여 문서화됩니다.

Sep 20 11:34:51 host sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
Sep 20 11:34:51 host sudo: pam_succeed_if(sudo:session): 'uid' resolves to '0'
Sep 20 11:34:51 host sudo: pam_succeed_if(sudo:session): 'user' resolves to 'root'
Sep 20 11:34:51 host sudo: pam_succeed_if(sudo:session): 'ruser' resolves to 'telegraf'
Sep 20 11:34:51 host sudo: pam_unix(sudo:session): session closed for user root

내가 아는 한 "규칙"은 uid, user 및 ruser와 올바르게 일치하지만 로그 메시지를 표시하지 않습니다. 재부팅을 놓쳤거나 무슨 일이 일어났나요?

답변1

나는 다음 구성을 사용하도록 관리했습니다 ( /etc/pam.d/sudo)

#%PAM-1.0

session [success=done default=ignore] pam_succeed_if.so quiet uid = 0 user = root ruser = telegraf
session    required   pam_env.so readenv=1 user_readenv=0
session    required   pam_env.so readenv=1 envfile=/etc/default/locale user_readenv=0
@include common-auth
@include common-account
@include common-session-noninteractive

솔직히 뭐가 문제인지는 모르겠지만 순서가 중요할 수도 있겠다는 생각이 듭니다. 이 정보를 사용하는 데 따른 모든 책임은 본인에게 있습니다. 제가 무엇을 하고 있는지는 모르겠지만...제 시스템 로그는 이제 훨씬 더 깨끗해 보입니다. :)

(누군가 상황을 설명해 주시면 정말 감사하겠습니다)

관련 정보