ufw를 사용하여 수신된 패킷을 기록합니다.

ufw를 사용하여 수신된 패킷을 기록합니다.

Ubuntu 18.04 LTS에서 ufw를 사용하고 있으며 둘 다 제거를 기록하고 싶습니다.그리고허용된 패킷(이로 인해 많은 로그가 생성된다는 것을 알고 있습니다).

-를 사용하여 ufw 로그 수준을 높여 이 작업을 수행할 수 있지만 ufw logging high기본적으로 포함되지 않은 일부 추가 정보(TCP 옵션 및 시퀀스 번호)도 기록하고 싶기 때문에 이 방법은 작동하지 않습니다.

사용자 정의 로깅 규칙을 추가할 올바른 위치는 이라고 생각하며 /etc/ufw/before.rules다음과 같이 파일 끝 부분에 이를 추가했습니다 COMMIT.

-A INPUT -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "
-A FORWARD -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "

그러나 이는 허용된 패킷이 아닌 삭제된 패킷만 기록합니다. iptables 규칙의 순서와 관련이 있는 것 같지만 before.rules허용된 패킷의 로깅을 단락시키는 다른 항목은 보이지 않습니다.

몇 가지 추가 제한 사항은 아웃바운드 연결이나 루프백 트래픽을 기록하고 싶지 않다는 것입니다.

추가 정보와 함께 삭제 및 수락된 패킷을 기록하는 방법에 대한 아이디어가 있습니까?

답변1

-A 추가규칙은 체인의 끝에 있습니다 iptables.

먼저 각 패킷을 기록하려면 다음을 사용해 보십시오 -I.

-I INPUT -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "
-I FORWARD -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "

즉, 이러한 문제를 해결하는 가장 좋은 방법은 다음을 만드는 것입니다.새로운 체인점그리고 표준 체인 대신 이러한 체인을 사용하도록 규칙을 수정하세요.

(간단한) 예로, 두 개의 새로운 타겟을 가질 수 있습니다:

iptables -N LOG_DROP
iptables -N LOG_ACCEPT

"기본" 규칙을 다음과 같이 만듭니다.

iptables -A LOG_DROP -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "
iptables -A LOG_DROP -j DROP

iptables -A LOG_ACCEPT -j LOG --log-tcp-options --log-tcp-sequence --log-prefix "[MY_PREFIX] "
iptables -A LOG_ACCEPT -j ACCEPT

그런 다음 규칙에 따라 다음과 LOG_DROP같이 "보내기"를 수행할 수 있습니다 DROP.LOG_ACCEPTACCEPT

iptables -A INPUT -p tcp --dport 22 -j LOG_DROP # Log and drop input packets to port 22

관련 정보