다른 포트를 사용하여 다른 원격 컴퓨터로 포트 리디렉션을 허용하는 데 문제가 있지만 동시에 리디렉션은 특정 소스 IP를 기반으로 수행됩니다. 상황은 IP xx.xx.xx.x01의 사용자가 서버 xx.xx.xx.x02의 포트 xxx09에만 연결할 수 있기를 원하는 것입니다. 그러면 서버 xx.xx.xx.x03 포트 xxx10으로 리디렉션됩니다. 스택 오버 플로우 또는 Google에서 너무 많은 구성을 사용했지만 원하는 대로 작동하지 않습니다. 모든 IP가 포트 xxx09에 연결되도록 허용한 다음 포트 xxx10의 서버 xx.xx.xx.x03으로 리디렉션하므로 허용해야 합니다. 모든 IP가 아닌 IP xx.xx.xx.x01에서만 리디렉션 다음은 성공하지 못한 채 테스트한 규칙입니다. (또한 csf에서 이 작업을 시도했지만 동일한 결과를 얻습니다.)
firewall-cmd --permanent --zone=public --list-sources firewall-cmd --permanent --zone=public --add-source=xx.xx.xx.01 firewall-cmd --permanent --zone=public --add-port=xxx09/tcp firewall-cmd --permanent --zone=public --add-masquerade firewall-cmd --permanent --zone=public --add-forward-port=port=xxx09:proto=tcp:toport=xxx10:toaddr=xx.xx.xx.03 firewall-cmd --reload
나는 또한 다음을 사용했습니다
firewall-cmd --zone=public --add-source=xx.xx.xx.01 firewall-cmd --zone=zone-name --add-source-port=xxx09/tcp --add-source=xx.xx.xx.01 firewall-cmd --permanent --zone=public --add-masquerade firewall-cmd --permanent --zone=public --add-forward-port=port=xxx09:proto=tcp:toport=xxx10:toaddr=xx.xx.xx.03 firewall-cmd --reload
어떤 도움이라도 제공해 주시면 감사하겠습니다. 비슷한 상황에 대한 모든 규칙을 행운이나 성공 없이 테스트했지만 여전히 모든 IP에서 리디렉션을 허용하고 csf 및 iptables도 시도했지만 성공하지 못했습니다. 미리 감사드립니다. 모두가 저를 진심으로 받아주세요. ,
답변1
마침내 3일 후에 문제를 해결했지만 iptables를 사용하여 다음 iptables 규칙을 사용했습니다.
iptables -t nat -A PREROUTING -p tcp --source xx.xx.xx.01 --dport xxx09 -j DNAT --to-destination xx.xx.xx.03:xxx10 iptables -t nat -A POSTROUTING -j MASQUERADE
이제 ""에서만 포트 전달을 수행할 수 있습니다. 죄송합니다. "Firewalld"에 대한 이야기는 알고 있지만 "Firewalld"에서 솔루션을 찾지 못했습니다. "Iptables"가 아닌 "Iptables"에서 해결책을 찾았습니다. "Firewalld"에서 찾을 수 있다면 저도 기쁠 것입니다. 최선을 다해 안부 인사를 드립니다.