如何解决具有TCP代理的Firewall-cmd直接规则不起作用
所以我正在Redhat Linux发行版上使用tcp代理,它将拦截从用户应用程序到远程ldap服务器本身的ldap数据包。 因此ldap流量是从localhost:转到ldapserver:389。
我的tcp代理的客户端端口为localhost:4700,上游端口为ldapserver:389。如果我使用socat将tcp发送到localhost:4700,我会看到流量通过代理并在ldapserver:389上收到,因此我知道代理正在工作。
因此,我希望从本地主机到ldapserver:389的所有数据包都重定向到本地主机:4700。我有以下规则,作为我的ldap服务器的女巫10.20.30.40
firewall-cmd --direct --ad-rule ipv4 nat POSTROUTING 0 -p tcp --destination-port 389 --destination 10.20.30.40 -j SNAT --to-source 127.0.0.1:4700+
firewall-cmd --direct --add-rule ipv4 raw OUTPUT 0 -p tcp -m tcp --dport 4700 --destination 127.0.0.1 -j CT --notrack
然后我使用socat将数据发送到10.20.30.40:389。我在ldap服务器上看到了收到的数据,但是它没有像以前一样通过代理传递(没有跟踪日志记录)。而且它只能运行一次:要使其再次运行,我必须重置firewalld并再次设置规则。
所以我不确定发生了什么,而且我对防火墙cmd规则也不是很满意。有人有什么想法吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。