게이트웨이 역할을 하는 하나의 시스템( "이라고 함 master
)과 개인 IP 주소만 있는 여러 시스템( "이라고 함 s01
) 으로 구성된 클러스터 구성이 있습니다 s09
.
최근에 설치했는데 ufw
게이트웨이 master
뒤에 있는 컴퓨터가 더 이상 외부 인터넷에 액세스할 수 없다는 사실을 발견했습니다( wget google.com
실패).
로그를 확인해보니 이런 내용이 있었습니다.
[609940.531858] [UFW BLOCK] IN=eth1 OUT=eth0 MAC=00:25:90:0c:e0:5b:00:25:90:32:3c:9e:08:00 SRC=192.168.0.178 DST=172.217.6.78 LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=58107 DF PROTO=TCP SPT=59584 DPT=80 WINDOW=29200 RES=0x00 SYN URGP=0 MARK=0x9
에 다음 규칙을 추가했습니다 ufw
.
ufw allow from 192.168.0.178
ufw reload
이것은 상태의 출력입니다 ufw
.
Status: active
To Action From
-- ------ ----
22 ALLOW Anywhere
Anywhere ALLOW 192.168.0.178
22 ALLOW Anywhere (v6)
불행 wget
하게도 여전히 실패하고 UFW BLOCK
로그에 위와 같은 줄이 더 많이 표시됩니다.
게이트웨이 뒤에 있는 호스트의 아웃바운드 트래픽을 허용하도록 ufw를 올바르게 구성하려면 어떻게 해야 합니까?
답변1
몇 가지 조사 끝에 UFW가 기본적으로 요청 전달을 거부한다는 사실을 발견했습니다. 한 가지 가능한 해결책은 edit /etc/default/ufw
및 set DEFAULT_FORWARD_POLICY="ACCEPT"
이지만 이는 안전하지 않은 것 같습니다.
대신에 다음 규칙을 /etc/ufw/before.rules
.
# Eth0 is public, Eth1 is private.
-A FORWARD -i eth1 -o eth0 -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -i eth0 -o eth1 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT