웹사이트 검색

로깅 셸 사용자 활동을 감사하도록 PAM을 구성하는 방법


이것은 Linux 감사에 대해 진행 중인 시리즈입니다. 이 기사의 네 번째 부분에서는 Linux TTY 입력(쉘 사용자 활동 로깅) 감사를 위해 PAM을 구성하는 방법을 설명합니다. pam_tty_audit 도구를 사용하는 특정 사용자에 대해.

Linux PAM(플러그형 인증 모듈)은 애플리케이션 및 다양한 시스템 서비스에서 인증 서비스를 구현하기 위한 매우 유연한 방법입니다. 이는 원래 Unix PAM에서 나왔습니다.

인증 기능을 계정 모듈, 인증 모듈, 비밀번호 모듈세션 모듈 의 네 가지 주요 관리 모듈로 나눕니다. . 이러한 관리 그룹에 대한 자세한 설명은 이 튜토리얼의 범위를 벗어납니다.

auditd 도구는 pam_tty_audit PAM 모듈을 사용하여 지정된 사용자에 대한 TTY 입력 감사를 활성화하거나 비활성화합니다. 사용자가 감사되도록 구성되면 pam_tty_auditauditd와 함께 작동하여 터미널에서 사용자 작업을 추적하고 구성된 경우 사용자가 하는 정확한 키 입력을 캡처합니다. 그런 다음 /var/log/audit/audit.log 파일에 기록합니다.

Linux에서 사용자 TTY 입력 감사를 위해 PAM 구성

/etc/pam.d/system-auth/etc에서 특정 사용자 TTY 입력을 감사하도록 PAM을 구성할 수 있습니다. /pam.d/password-auth 파일, 활성화 옵션 사용. 반면에 예상대로 비활성화하면 지정된 사용자에 대해 아래 형식으로 비활성화됩니다.

session required pam_tty_audit.so disable=username,username2...  enable=username,username2..

실제 사용자 키 입력(공백, 백스페이스, 리턴 키, Ctrl 키, 삭제 키 등 포함)에 대한 로깅을 켜려면 다음 형식을 사용하여 log_passwd 옵션을 다른 옵션과 함께 추가하세요.

session required pam_tty_audit.so disable=username,username2...  enable=username log_passwd

그러나 구성을 수행하기 전에 다음 사항에 유의하십시오.

  • 위 구문에서 볼 수 있듯이 활성화 또는 비활성화 옵션에 많은 사용자 이름을 전달할 수 있습니다.
  • 비활성화 또는 활성화 옵션은 동일한 사용자 이름과 일치하는 이전 반대 옵션을 재정의합니다.
  • TTY 감사를 활성화한 후에는 정의된 사용자가 시작한 모든 프로세스에 상속됩니다.
  • 키 입력 기록이 활성화된 경우 TTY 감사는 먼저 키 입력을 버퍼에 저장하고 지정된 간격으로 또는 감사 대상 사용자가 로그아웃한 후 버퍼 내용을 /var/log에 기록하므로 입력이 즉시 기록되지 않습니다. /audit/audit.log 파일.

아래 예를 살펴보겠습니다. 여기서는 모든 터미널에서 키 입력을 포함한 사용자 tecmint의 작업을 기록하도록 pam_tty_audit를 구성하고 다른 모든 터미널에 대해서는 TTY 감사를 비활성화합니다. 시스템 사용자.

다음 두 구성 파일을 엽니다.

vi /etc/pam.d/system-auth
vi /etc/pam.d/password-auth

구성 파일에 다음 줄을 추가합니다.
세션 필요 pam_tty_audit.so 비활성화=* 활성화=tecmint

그리고 tecmint 사용자가 입력한 모든 키 입력을 캡처하려면 표시된 log_passwd 옵션을 추가할 수 있습니다.

session required pam_tty_audit.so disable=*  enable=tecmint log_passwd

이제 파일을 저장하고 닫습니다. 그런 다음 aureport 유틸리티를 사용하여 기록된 모든 TTY 입력에 대한 auditd 로그 파일을 확인하세요.

aureport --tty

위 출력에서 UID1000tecmint 사용자가 vi/vim 편집기를 사용하여 이라는 디렉토리를 생성한 것을 볼 수 있습니다. bin으로 이동하고 터미널을 지우는 등의 작업을 수행합니다.

특정 시간과 같거나 그 이후의 타임스탬프로 기록된 TTY 입력 로그를 검색하려면 -ts를 사용하여 시작 날짜/시간을 지정하고 -te를 사용하여 끝을 설정하세요. 날짜 시간.

다음은 몇 가지 예입니다.

aureport --tty -ts 09/25/2017 00:00:00 -te 09/26/2017 23:00:00
aureport --tty -ts this-week

자세한 내용은 pam_tty_audit 매뉴얼 페이지에서 확인할 수 있습니다.

man  pam_tty_audit

다음 유용한 기사를 확인해 보세요.

  1. Linux 서버에서 PuTTY를 사용하여 "비밀번호 SSH 키 인증 없음" 구성
  2. RHEL/CentOS 7에서 LDAP 기반 인증 설정
  3. SSH 로그인을 위한 2단계 인증(Google Authenticator)을 설정하는 방법
  4. SSH Keygen을 사용하여 간단한 5단계로 SSH 비밀번호 없는 로그인
  5. Linux에서 비밀번호를 입력하지 않고 'sudo' 명령을 실행하는 방법

이 기사에서는 CentOS/RHEL에서 특정 사용자의 입력을 감사하기 위해 PAM을 구성하는 방법을 설명했습니다. 질문이 있거나 공유하고 싶은 추가 아이디어가 있으면 아래 댓글을 사용하세요.