%EC%97%90%EC%84%9C%20IPTable%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%ED%8F%AC%ED%8A%B8%EB%A5%BC%20%EB%A6%AC%EB%94%94%EB%A0%89%EC%85%98%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
포트 80을 8080으로 전달하고 싶습니다. 그래서 편집을 시도했습니다 /etc/syscongfig/iptables
.
-A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
그러나 얻었습니다 :
# service iptables restart
iptables: Flushing firewall rules: [ OK ]
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Unloading modules: [ OK ]
iptables: Applying firewall rules: iptables-restore v1.4.7:
Line 8 seems to have a -t table option.
뭐가 문제 야? 어떻게 해야 합니까?
답변1
파일 /etc/syscongfig/iptables
에 iptables-restore에 대한 올바른 구조가 있습니까?
이 규칙을 방화벽에 수동으로 추가해 보세요.
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
그리고 명령 /etc/sysconfig/iptables
의 출력과 비교iptables-save
답변2
이건 너의iptables
규칙:
-A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
하지만 나는 대신에 다음과 같이 되어야 한다고 믿습니다.
-A PREROUTING -t nat -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
참고 -m tcp
하세요. -p tcp
확인할 규칙 또는 패킷의 프로토콜과 일치하는 동안 -m tcp
IPTables에 TCP 패킷과 일치하도록 명시적으로 지시합니다. 혼란스러워 보이지만 내가 아는 바로는 포트별 규칙이 호출될 때 -p tcp
쌍을 이루어야 합니다 .-m tcp
다른 사람이 이 요구 사항의 근거/논리를 확장할 수 있다면 의견을 통해 이에 대해 알려주세요.