멸치잡이 Snort의 alert 신호를 원격으로 전송하는 방법. 2009/11/02 21:04 by 준경군

별로 적을 내용은 없지만 랍형이 적으라고 압박을 주시는 관계로 정리를 해보겠습니다. 테스트 서버도 Ubuntu Sarge였던것 같은데... 서버관리는 제 권한이 아니라;; 자세한건 빨콩횽한테 물어보세요.

우선 /etc/snort/snort.conf 파일을 열고 아래의 내용을 주석해제 해줍니다.

output alert_syslog: LOG_AUTH LOG_ALERT

그리고 /etc/init.d/snort restart 따위로 재시작을 해주시면 snort에서 만들어지는 alert 정보들을 /var/log/auth.log에 쌓아주는 모습을 확인하실 수 있을겁니다.

그럼 외부로는 어떻게 보내느냐? 이 syslog를 수정해주면 됩니다. 물론 LOG_AUTH는 시스템에서 쓰고있는 곳이 많이 있을테니 그것 말고 LOG_LOCAL*을 대신 사용해주면 됩니다.

syslog의 설정은 /etc/syslog.conf 파일을 통해 가능합니다. 아래 내용을 추가해주세요.

local0.* @[목적지 IP 주소]

이렇게 LOG_LOCAL0을 설정해주고 다시 /etc/syslog.conf를 열어서 LOG_AUTH를 아래와 같이 바꿔줍니다.

output alert_syslog: LOG_LOCAL0 LOG_ALERT

이렇게 하고나니까 랍형이 알아서 신호 잘 받고 뿌려주시더라구요. 내용은 어떻게 받고 출력하는지는 랍형에게 문의 바랍니다.

ps1. 앟싸~ 오늘 할 일 끗!!
ps2. 정말 쓰기 싫었던게 확 티나는 글이네요. -_- 이게 다 랍횽아 때문이라능~

트랙백

이 글과 관련된 글 쓰기 (트랙백 보내기)
TrackbackURL : http://ssmim101.egloos.com/tb/2463716 [도움말]

덧글

  • 서린 2009/11/04 15:12 # 답글

    syslogd에 따라서 조금씩 다르지만, 대부분의 GNU/Linux 내장의 경우, 받는 쪽 syslog 스위치에 -r 넣어주고 재기동 시켜줘야 합니다.

    /etc/sysconfig/syslog

    SYSLOGD_OPTIONS="-m 0"
    -> SYSLOGD_OPTIONS="-m -r 0"

  • 준경군 2009/11/05 12:05 #

    흐음... 저도 확인을 해봤는데 제가 앞쪽에 언급했던 Ubuntu Sarge의 경우는 그 옵션이 기본적으론 들어있지 않습니다. (물론 동작은 제대로 수행 중이구요.)
    정확히 어떤 시스템에서 문제가 발생할 수 있을지 혹시 알려주실 수 있을까요?
  • 서린 2009/11/05 12:36 # 답글

    신기하네요.

    대부분의 배포판 내장 sysklogd의 경우라면,

    /etc/sysconfig/syslog 파일 내의 주석에 써 있듯이

    # Options to syslogd
    ~
    # -r enables logging from remote machines
    ~
    받는 syslog쪽에서 -r 옵션을 써주지 않으면 syslog의 원격 포트가 아예 올라오지 않습니다.

    -서버측 losf -i | grep syslog로 간단히 확인가능.

    -r을 붙여야만 UDP *:syslog형태로 올라옴

    우분투에 뭔가 이상한거 들어가 있나해서 조금 찾아봤습니다만,

    http://www.debuntu.org/how-to-remote-syslog-logging-debian-and-ubuntu

    http://ubuntuforums.org/showthread.php?t=443660

    조금 된 글이지만 마찬가지로 -r옵션을 요구하네요.

    그러고보니 얼마전 xeraph님 글에서 syslog를 거쳐서 데이터 뽑는 것 같던데, local* 로 정의된 서버측 전송은 일반 구성이 아닌 에이전트 쓰는 것 아닐까요.
  • 준경군 2009/11/06 00:31 #

    ps aux | grep syslog로 찾아봐도 'syslogd -m 0' 밖에 없네요. 저도 분명 메뉴얼에서 옵션값을 보긴 했는데 뭔가 돌아가지 않아야 할게 돌아가는 기분도 살짝 들고 말이지요;;

    왜 돌아가는거지? -_-;;;;;;
  • xeraph 2009/11/06 00:53 #

    ㅎㅎ 아무래도 환경을 잘못 보셨나봐요..
    snort (linux) ---> kraken (syslog receiver)
    syslog 리모트로 쏘는 것만 셋팅한 것이니까요..
  • 서린 2009/11/06 10:04 #

    kraken이 syslog서버 역할까지 하는 거군요. 그래서 저번에 파싱 얘기가 있었던 거고, 이해가 갑니다.
덧글 입력 영역