별로 적을 내용은 없지만 랍형이 적으라고 압박을 주시는 관계로 정리를 해보겠습니다. 테스트 서버도 Ubuntu Sarge였던것 같은데... 서버관리는 제 권한이 아니라;; 자세한건 빨콩횽한테 물어보세요.
우선 /etc/snort/snort.conf 파일을 열고 아래의 내용을 주석해제 해줍니다.
그리고 /etc/init.d/snort restart 따위로 재시작을 해주시면 snort에서 만들어지는 alert 정보들을 /var/log/auth.log에 쌓아주는 모습을 확인하실 수 있을겁니다.
그럼 외부로는 어떻게 보내느냐? 이 syslog를 수정해주면 됩니다. 물론 LOG_AUTH는 시스템에서 쓰고있는 곳이 많이 있을테니 그것 말고 LOG_LOCAL*을 대신 사용해주면 됩니다.
syslog의 설정은 /etc/syslog.conf 파일을 통해 가능합니다. 아래 내용을 추가해주세요.
이렇게 LOG_LOCAL0을 설정해주고 다시 /etc/syslog.conf를 열어서 LOG_AUTH를 아래와 같이 바꿔줍니다.
이렇게 하고나니까 랍형이 알아서 신호 잘 받고 뿌려주시더라구요. 내용은 어떻게 받고 출력하는지는 랍형에게 문의 바랍니다.
ps1. 앟싸~ 오늘 할 일 끗!!
ps2. 정말 쓰기 싫었던게 확 티나는 글이네요. -_- 이게 다 랍횽아 때문이라능~
우선 /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. 정말 쓰기 싫었던게 확 티나는 글이네요. -_- 이게 다 랍횽아 때문이라능~


덧글
서린 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서버 역할까지 하는 거군요. 그래서 저번에 파싱 얘기가 있었던 거고, 이해가 갑니다.