원격으로 SYSLOG를 받아오는데 ip가 6자리로 출력됩니다. ex)xxx.xxx.xxx.x.x
SunOS ser-01 5.8 Generic_117350-20 sun4u sparc SUNW,Ultra-80
위의 서버를 로그서버로 사용하고 있습니다.
여러개의 unix/linux 들에서 로그를 정상적으로 받아오는데는 문제가
없는데
특정 몇 몇 서버들의 xxx.xxx.xxx.xxx로 출력하지 않고
xxx.xxx.xxx.x.x 로 출력하는것들이 있습니다.
즉, 123.123.123.222 라는 ip에서 로그를 받아와야 한다치면
로그서버에는
Mar 23 05:35:39 ser-09 su: [ID 366847 auth.notice] 'su root' succeeded for sysadmin on /dev/pts/1
Mar 23 05:41:13 [123.123.123.123.2.2] unix_chkpwd[11136]: check pass; user unknown
Mar 23 05:41:13 [123.123.123.123.2.2] unix_chkpwd[11136]: check pass; user unknown
Mar 23 05:41:13 [123.123.123.123.2.2] remote(pam_unix)[11135]: authentication failure; logname= uid=0 euid=0 tty=pts/2 ruser= rhost=xxx.xxx.xxx.xxx
Mar 23 05:41:16 [123.123.123.123.2.2] login[11135]: FAILED LOGIN 1 FROM 12.123.204.208 FOR sysadmin, Authentication failure
Mar 23 05:41:30 [123.123.123.123.2.2] unix_chkpwd[11137]: check pass; user unknown
Mar 23 05:41:30 [123.123.123.123.2.2] unix_chkpwd[11137]: check pass; user unknown
Mar 23 05:41:32 [123.123.123.123.2.2] login[11135]: FAILED LOGIN 2 FROM 12.123.204.208 FOR sysadmin, Authentication failure
Mar 23 05:41:35 [123.123.123.123.2.2] unix_chkpwd[11138]: check pass; user unknown
Mar 23 05:41:35 [123.123.123.123.2.2] unix_chkpwd[11138]: check pass; user unknown
Mar 23 05:41:38 [123.123.123.123.2.2] login[11135]: FAILED LOGIN 3 FROM 12.123.204.208 FOR sysadmin, Authentication failure
Mar 23 05:41:42 [123.123.123.123.2.2] PAM-Wheel[11163]: Ignoring access request 'green' for 'root'
Mar 23 05:42:35 [123.123.123.123.2.2] kernel: Kernel logging (proc) stopped.
Mar 23 05:42:35 [123.123.123.123.2.2] kernel: Kernel log daemon terminating.
Mar 23 06:03:17 web31 su: [ID 366847 auth.notice] 'su root' succeeded for green on /dev/pts/1
Mar 23 06:04:29 web18 PAM-Wheel[29962]: Ignoring access request 'green' for 'root'
위와 같이 로그가 출력되고있습니다.
일단 호스트 네임으로 출력되지 않고, 아이피로 출력되는것은 호스트 파일에 해당 아이피를 등록해 놓지
않은 상태입니다.
일단 아이피가 왜 저런형식을 출력되는지 알고 싶고, 일반적인 형태인 4자리로 출력을 하고 싶습니다.
도움부탁드려요
감사합니다.
.
.
왠지 FTP의 PASV
왠지 FTP의 PASV 명령에서 ip,ip,ip,ip,port,port 형식으로 주는 게 생각나서
2x256+2를 해보니 514군요. http://www.iana.org/assignments/port-numbers 를 확인해보니
셸 로그인과 syslog가 사용한다고 합니다.
hr]
돼지군 작업실 Revision E: E-Prot, Eightbyte OS, ...
F/OSS를 위해 뭔가 하고 싶습니다. 뭘 하면 좋을까요?
Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.
감사합니다.
기분이 참 좋습니다.
궁금하다 생각하고 있었지만, 도무지 어떻게 찾아봐야 되는지조차 몰라
헤메고 있었는데 cppig1995님의 답변에서 말끔히 해결하였습니다.
Mar 23 05:41:30 [123.123.123.123.2.2] unix_chkpwd[11137]: check pass; user unknown
앞에 4단위는 제가 임으로 수정한것이고, 뒤에 2.2
이것이 PORT를 나타낸다는것을 이제 알 수 있네요.
처음에는 포트 2는 위의 인증로그와 관련이 없는데 뭘까.. 생각했는데요.
이걸 처음에는 '뭐지..?' 하고 대수롭지 않게 넘겼는데 다시 생각해보니 2가 뒤에
두개의 포트였군요.
어떤원리로 port x 256 +2 를 해줘서 port값을 가지게 되는지는 아직 알지 못하지만
2.2가 514, syslog 포트라는것을 뜻한다는것을 알게된것만으로도기쁩니다.
- 추가질문
syslog를 받아오고 있는데 저런식으로 ip+port로 값을 가져오다보니
hosts 파일에 123.123.123.123 으로 설정을 해 놓으면
설정된 호스트 네임이 나오지 않고 123.123.123.2.2 이렇게 나오고맙니다.
뒤에 2.2를 생략하고 IP로만 값을 전송해서 로그서버에서 hosts파일의 값을
참조하게 수정하는 방법은 어떻게 될까요 ?
댓글 달기