![방화벽이 내 LAN의 nft 가장 무도회 트래픽을 거부하는 이유는 무엇입니까?](https://linux55.com/image/182471/%EB%B0%A9%ED%99%94%EB%B2%BD%EC%9D%B4%20%EB%82%B4%20LAN%EC%9D%98%20nft%20%EA%B0%80%EC%9E%A5%20%EB%AC%B4%EB%8F%84%ED%9A%8C%20%ED%8A%B8%EB%9E%98%ED%94%BD%EC%9D%84%20%EA%B1%B0%EB%B6%80%ED%95%98%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
이더넷을 통해 Wi-Fi 인터넷을 공유하려고합니다. Fedora 32를 실행하는 두 머신 A와 B는 이더넷 스위치를 통해 연결되고, A는 Wi-Fi를 통해 인터넷에 연결됩니다. 존재하다 firewalld.conf
:
FirewallBackend=nftables
사용: nft
nat 테이블과 가장 규칙을 추가했습니다.
# nft list table nat -a
table ip nat { # handle 7
chain postrouting { # handle 2
type nat hook postrouting priority srcnat; policy accept;
ip saddr 10.0.0.0/24 counter packets 18 bytes 1255 masquerade # handle 13
}
}
머신 B에는 IP가 있고 10.0.0.4
LAN 내의 어느 곳에서나 액세스할 수 있습니다. ping은 가능 8.8.8.8
하지만 telnet 8.8.8.8 80
호스트에 대한 경로는 없습니다. B의 결과는 기본적으로 다른 인터넷 요청에서도 동일합니다.
# journalctl -x -e
...
FINAL_REJECT: IN=wan0 OUT= MAC=ff:ff:ff:ff:ff:ff:xx:xx:xx:xx:xx:xx:xx:xx SRC=10.188.xx.xxx DST=255.255.255.255 LEN=328 TOS=0x00 PREC=0x00 TTL=128 ID=28534 PROTO=UDP SPT=68 DPT=67 LEN=308
...
wan0
B의 요청이 있는 것 같지만 어떤 이유로 응답이 반환되지 않도록 방화벽에 의해 차단되고 있습니다.
firewalld
거기에 어떤 규칙이 적용되는지 확인하기 위해 디버깅하려면 어떻게 해야 합니까 ? 로그 문에 트래픽 거부 결정의 근거가 언급되지 않는 이유를 정말 이해하지 못합니다. 방화벽 내부에서 발생하는 논리에 대해 자세히 알아볼 수 있는 방법이 있습니까?
답변1
인터넷 연결을 공유하는 더 쉬운 방법은 다음과 같습니다.
dnf install firewall-config
- 루트 셸에서 애플리케이션을 엽니다(그렇지 않으면 비밀번호를 계속 묻습니다).
- 인터페이스를 영역
lan0
으로 이동trusted
- 기본 영역
FedoraWorkstation
에서 주소 변환 활성화 - 변경 사항을 영구적으로 적용(옵션 메뉴)
- 방화벽 다시 시작(옵션 메뉴)
올바른 수정 사항이 나타납니다 nft list ruleset
. 따라서 어떻게 작동하는지 아직 잘 모르겠습니다. 그러나 그것은 작동하며 앱은 CLI가 실제로 필요하지 않을 정도로 직관적이고 완벽합니다.