리눅스 모니터 로그 및 이메일 알림?


13

자체 재부팅을 좋아하는 전원 버튼에 결함이있는 서버가 있습니다. 일반적으로 / var / log의 acpid 로그 파일이 약 10 시간 정도 동안 스팸 쓰레기를 시작하는 것과 같은 경고 표시가 있습니다.

뭔가 새로운 로그를 모니터링하고 새로운 활동이있을 때 저에게 이메일을 보낼 수있는 쉬운 방법이 있습니까?

나는 나 자신이 매우 진보 된 것으로 생각하지 않기 때문에 이와 같은 것을 성취하기 위해 당신이 가질 수있는 "안내자"는 매우 도움이되고 대단히 감사 할 것입니다. 감사합니다!


전원 버튼 및 / 또는 서버를 변경하는 것이 그럴듯한 해결책입니까?
Meetai.com

답변:


19

LogWatch 와 같은 것을 사용할 수 있습니다 . 또는 이와 같은 간단한 스크립트 (의사 코드이므로 환경에 맞게 수정해야합니다) :

 #!/bin/bash
 GREP_STRING=`grep -c <error string> <acpid log location>`
 if [ $GREP_STRING -ne 0 ] 
 then
    <send email notification>
 fi

매 시간마다 실행되도록 cron에 넣으십시오. 더 이상이 나면 이메일을 보내야합니다.


1
logwatch는 나를 위해 잘 작동합니다.
J.Zimmerman

3
이 스크립트의 문제점은 파일이 회전 할 때까지 동일한 오류를 반복해서 보내는 것입니다.
chmeee

설치할 수 있습니다 logwatch 우분투 / 데비안 : 적성은 -y logwatch 설치
Meetai.com

8

OSSEC HIDS를 사용 하여 로그 파일에 규칙을 설정하고 동시에 호스트로부터 보안 정보를 얻을 수 있습니다.

설정하는 것은 매우 쉽습니다.

  • 소스를 다운로드
  • 압축을 풀고 ./install.sh를 실행하십시오.
  • 로컬 설치를 선택하십시오
  • 질문에 답하십시오 (이메일, 수표 등)
  • /var/ossec/rules/local_rules.xml아래에 지정된대로 편집
  • 로 OSSEC 시작 /var/ossec/bin/ossec-control start

local_rules.xml

<group name="local,syslog,">
  <rule id="100001" level="13">
    <regex>^.*Your string.*$</regex>
    <description>I've just picked up a fault in the AE35 unit. It's going to go 100% failure in 72 hours</description>
  </rule>
</group>

규칙은 매우 유연하고 복잡 할 수 있습니다. 규칙과 관련된 매개 변수에 대한 아이디어를 얻으려면 이 표 를 참조하십시오 .

다른 보안 기능이 필요하지 않거나 필요하지 않은 경우 태그 include아래의 줄 을 제거하여 비활성화 할 수 있습니다 rules.


5

나는 Nagios 에게 네트워크가있는 여러 컴퓨터를 모니터링하기 위해 작업하는 곳을 제안 합니다. 그것은 내가하는 일에 특별히 사용하지는 않았지만 오류가 발생하면 이메일을 보내도록 설정할 수 있습니다.

Ubuntu http://beginlinux.com/blog/2008/11/install-nagios-3-on-ubuntu-810/ 에 설치하기위한 안내서 와 http : //www.debianhelp 에 설치하기위한 안내서가 있습니다 . co.uk/nagiosinstall.htm .


3

그리고 당신은 이것을 다음과 같이 보낼 수 있습니다 :

EMAILMSG="/tmp/logreport.$$"
echo "Something to put in the email" >> $EMAILMSG

cat $EMAILMSG | mail -s "Whatever Subject You Like" user@domain.com
rm -f $EMAILMGS

3

Zabbix 를 IPMI 도구와 함께 사용하여 요청시 결함이있는 서버를 다시 시작합니다. 또한 OSSEC 도 좋은 선택 이라고 생각 하지만 실제로 제품을 생산하기 전에 실험하고 디버깅해야합니다 ...


3

서버에 Splunk 를 다운로드하여 설치 하십시오. 로그 워치와 비슷하지만 로그 검색 엔진을 제공합니다.

로그를 인덱싱하도록 구성한 다음 로그를 검색하고 패턴을 찾고 오류를 찾은 다음 해당 특정 오류 지점에서 다른 로그가 수행중인 작업을 확인할 수 있습니다.

특정 임계 값에서 경고를 보내거나 스크립트를 실행하도록 설정할 수도 있습니다. 따라서 특정 오류가 로그에 스팸으로 시작되면 문제가있는 서비스를 자동으로 다시 시작하도록 스크립트를 작성할 수 있습니다.

우리는 서버 클러스터에서 splunk를 사용하며 생명의 은인이었습니다!


Splunk의 +1, 꽤 나아 보입니다. 오늘 밤에 시도해 보았습니다.
마크 데이비슨

1

이전 고용주에서는 logsurfer + 를 사용 하여 실시간으로 로그를 모니터링하고 이메일 알림을 보냈습니다. 오 탐지를 조정하는 데 많은 시간과 구성이 필요하지만 Nagios가 비슷한 용도로 사용했던 것보다 훨씬 더 가치있는 다양한 결과와 경고에 매우 효과적인 규칙 세트가있었습니다.

불행히도 더 이상 구성 파일에 액세스하여 필터링 한 샘플을 제공 할 수는 없지만 사이트는 더 많은 정보와 예제를 제공해야합니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.