특정 포트의 모든 입력을 파일에 기록하는 서비스를 만들어야 합니다. 이를 위해 사용자 정의 프로그램을 만들어야 합니까, 아니면 기존 도구가 있습니까?
답변1
의 도움으로IP 테이블그리고시스템 로그, 특정 포트의 모든 입력을 파일에 기록할 수 있습니다.
/var/log/messages
IPtables 기본 로그 파일은 RHEL 기반 시스템 및 /var/log/syslog
Debian 기본 시스템 에 있습니다 . 세부 정보를 다른 로그 파일에 기록할 수 있습니다.
/etc/syslog.conf
다음 줄을 열고 추가하세요.
kern.warning /var/log/iptables.log
추가한 후에는 다음 명령을 사용하여 syslog 서비스를 다시 시작하여 변경 사항을 반영해야 합니다.
/etc/init.d/syslog restart
이제 포트 80을 기록하고 다음 규칙을 추가한다고 가정해 보겠습니다.
iptables -A INPUT -p tcp --dport 80 -j LOG --log-level 4
이제 로그를 따라가서 확인하세요.
tail -f /var/log/iptables.log
규칙 저장:
/etc/init.d/iptables save
시작 시 필요한 서비스를 활성화합니다.
chkconfig --level 35 iptables on
chkconfig --level 35 syslog on
답변2
몇 가지 도구가 있지만 가장 일반적인 도구 중 하나는 다음과 같습니다.시스템 로그. 의심할 바 없이 배포판의 패키지 저장소에서 찾을 수 있으며, 물론 소스에서 빌드할 수도 있습니다.
데몬은 일반적으로 포트 514 UDP에서 수신 대기하고 UDP 패킷을 수락합니다. 그런 다음 이 패킷은 구성에 지정된 규칙 집합에 따라 특정 로그 파일에 배치됩니다 rsyslog
.
답변3
그것 또한 생각한다TCP 덤프여기가 편할 수도 있겠네요. (TCP에만 국한되지 않음)