FORWARD 체인의 첫 번째 규칙은 나에게 흥미로웠습니다. 정책을 면제해야 한다면 이것이 왜 필요한 규칙입니까?
root@tomato:/tmp/home/root# iptables -L --line-numbers
Chain INPUT (policy DROP)
num target prot opt source destination
1 REJECT tcp -- anywhere tomato multiport dports www,https,ssh reject-with tcp-reset
2 REJECT tcp -- anywhere tomato-lan1 multiport dports www,https,ssh reject-with tcp-reset
3 DROP all -- anywhere anywhere state INVALID
4 ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
5 shlimit tcp -- anywhere anywhere tcp dpt:ssh state NEW
6 ACCEPT all -- anywhere anywhere
7 ACCEPT all -- anywhere anywhere
8 ACCEPT all -- anywhere anywhere
Chain FORWARD (policy DROP)
num target prot opt source destination
1 REJECT tcp -- anywhere tomato multiport dports www,https,ssh reject-with tcp-reset
2 REJECT tcp -- anywhere tomato-lan1 multiport dports www,https,ssh reject-with tcp-reset
3 ACCEPT all -- anywhere anywhere
4 ACCEPT all -- anywhere anywhere
5 DROP all -- anywhere anywhere state INVALID
6 ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
7 DROP all -- anywhere anywhere
8 DROP all -- anywhere anywhere
9 wanin all -- anywhere anywhere
10 wanout all -- anywhere anywhere
11 ACCEPT all -- anywhere anywhere
12 ACCEPT all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Chain shlimit (1 references)
num target prot opt source destination
1 all -- anywhere anywhere recent: SET name: shlimit side: source
2 DROP all -- anywhere anywhere recent: UPDATE seconds: 60 hit_count: 4 name: shlimit side: source
Chain wanin (1 references)
num target prot opt source destination
1 ACCEPT tcp -- anywhere oldtimer tcp dpt:3300
Chain wanout (1 references)
num target prot opt source destination
답변1
1) 규칙은 상위 수준 설명을 사용하여 일부 프로그램에서 자동으로 생성됩니다. 규칙이 거기에 나타난다는 이유만으로 "필요하다"고 가정하지 마십시오.
2) 규칙이 반드시 필요하지 않더라도 허용되지 않는 사항을 명시적으로 명시하여 규칙을 포함하는 것이 좋습니다.
3) 즉, 패킷을 수락하고 테이블 끝에 도달하기 전에 기본 DROP 정책을 적용하는 다른 규칙이 있는 경우 실제로 이 규칙을 포함해야 할 수도 있습니다.
특히 FORWARD 체인의 규칙 11과 12는 동일해 보이고 모든 것을 허용하는 것처럼 보입니다(따라서 목록에 없는 속성이 있을 수 있습니다. -S
대신 시도해 보세요 -L
). 그렇다면 기본 정책이 허용하는 것과 동일하므로 포기하고 싶은 모든 것을 명시적으로 포기해야 합니다.