시스템 관리자가 각 사용자의 연결 및 연결 끊김에 대한 알림을 받을 수 있는 올바른 방법은 무엇입니까?

시스템 관리자가 각 사용자의 연결 및 연결 끊김에 대한 알림을 받을 수 있는 올바른 방법은 무엇입니까?

컴퓨터를 모니터링하기 위해 사용자가 컴퓨터에 연결하거나 연결을 끊을 때마다 이메일 알림을 받고 싶습니다(루트 사용자 포함).

Linux 머신이지만 BSD에 대한 일반적인 접근 방식이 있는지에도 관심이 있습니다.

저는 해당 머신의 관리자이지만 다른 관리자도 있습니다.

감사해요!

답변1

및 을 사용하여 복잡한 것을 해킹할 수 있지만 tail -F가장 awk쉬운 방법은 perl해당 File::Tail모듈(해당 시스템 로그 파일을 모니터링하기 위해)과 많은 메일 전송 모듈 중 하나(예: Mail::Send또는 Net::SMTP그것) 중 하나를 사용하여 메일을 보낼 수 있도록 사용하는 것입니다. 사용자가 로그인 또는 로그아웃되었습니다. 또는 성공적으로 로그인하지 못했습니다. 또는 알림을 받고 싶은 기타 이벤트.

이 모듈에 포함된 샘플 File::Tail스크립트는 이미 원하는 작업의 약 90%를 수행하며 특정 요구 사항에 맞게 쉽게 조정할 수 있습니다.

모니터링할 정확한 로그 파일은 배포판마다 다릅니다. 예를 들어 Debian에서는 모니터링하고 /var/log/auth.log다른 배포판 /var/log/syslog에서는 /var/log/messages.

freebsd는 기본적으로 perl을 설치하지 않지만 예를 들어 설치할 수 있습니다. pkg add perl5.22이는 기본 perl 언어만 설치하므로 File::Tailpr과 같은 라이브러리 모듈을 설치하려면 CPAN을 사용해야 합니다 Mail::Send.

관련 정보