해안 벽 로그는 기록되지만 시스템 로그에는 기록되지 않습니다.

해안 벽 로그는 기록되지만 시스템 로그에는 기록되지 않습니다.

NAT 라우터로 사용하기 위해 Debian 9.1을 설치했습니다. Shorewall 버전 5.0.15.6-1, Linux 커널 버전 4.9+80+deb9u1. 두 개의 네트워크 인터페이스가 있습니다. 라우팅 기능은 모두 잘 작동합니다.

연결 및 거부를 로그 파일에 기록하고 싶지만 syslog를 통하지는 않습니다.모든 것그렇지 않으면 그냥 거기로 가세요. 나는 읽었다http://shorewall.org/shorewall_logging.html내가 찾은 다른 문서는 주변 사례에 관한 것이었지만 최선을 다해 그것을 따랐습니다. 그러나 내 ulog 로그 파일은 비어 있고 netfilter 메시지는 여전히 /var/log/kern.log로 전송됩니다.

다음은 관련 구성 파일에서 발췌한 내용입니다.

/etc/shorewall/params

ETH1=br1
LOG="NFLOG(1,,)"

/etc/shorewall/shorewall.conf

LOGFILE=/var/log/shorewall-run.log
LOGFORMAT="Shorewall:%s:%s:"
MACLIST_LOG_LEVEL=$LOG
RPFILTER_LOG_LEVEL=$LOG
SFILTER_LOG_LEVEL=$LOG
SMURF_LOG_LEVEL=$LOG
STARTUP_LOG=/var/log/shorewall-init.log
TCP_FLAGS_LOG_LEVEL=$LOG

/etc/shorewall/규칙

ACCEPT:$LOG          loc                        $FW                        tcp     5509
ACCEPT:$LOG          net                        $FW                        tcp     5509
ACCEPT               loc                        $FW                        udp     53
ACCEPT               loc                        $FW                        tcp     53

/etc/ulogd.conf는 재고이며 /usr/share/doc/ulogd2/examples/ulogd.conf.gz와 동일합니다.

Shorewall 재시작을 실행하면 컴파일 오류가 발생하지 않으며 위의 규칙 예에서 볼 수 있듯이 5509에 연결하는 syslog 메시지가 표시되지만 53은 표시되지 않습니다. 로그 항목이 잘못된 위치로 이동합니다.

내가 뭘 잘못했나요?

답변1

~에 따르면man shorewall.conf

LOGFILE=[pathname|systemd]
    This parameter tells the /sbin/shorewall program where to look
    for Shorewall messages when processing the dump, logwatch, show
    log, and hits commands.

따라서 이 매개변수를 변경해도 방화벽이 로그 메시지를 기록하는 위치에는 영향을 미치지 않습니다.

Netfilter 메시지를 Netfilter 이외의 로깅 기능으로 전달하도록 Shorewall을 구성하려면 이를 달성하기 위해 다양한 옵션을 syslog참조해야 할 수 있습니다 .man shorewall-logging

관련 정보