端口 10000 上的 UDP 数据包和端口 4443 上的 TCP 数据包无法到达外部 jitsi 服务器

端口 10000 上的 UDP 数据包和端口 4443 上的 TCP 数据包无法到达外部 jitsi 服务器

我需要帮助配置以下场景:小型机构网络的 Web 浏览是通过代理服务器进行的,该代理服务器在 Debian 中配置为代理/防火墙(使用 iptables 规则)并连接到父代理,并进行身份验证。LAN 的客户端不会向外部进行任何类型的 DNS 查询,因为所有 Web 浏览都是通过代理进行的,不需要其他类型的外部服务访问。现在:我们必须访问特定 IP 地址 xxx.xxx.xxx.xxx 的 jitsi 服务器。对该 jitsi 服务器的 Web 访问没有问题,因为代理会处理它,但是对于分别发送到 UDP 端口 10000 和 TCP 4443 的数据包,我还没有设法在 iptables 规则中处理它们。

网络方案如下:

eth0 上的 LAN(192.168.0.0/24)----(192.168.0.1 ens18)debian 代理/防火墙(192.168.1.2 ens19)--(192.168.1.1)调制解调器路由器---->ISP

iptables规则如下:

 *filter
    :FORWARD DROP [0:0]
    :INPUT DROP [0:0]
    :OUTPUT DROP [0:0]
    # ##### INPUT chain ###### Accept relate or stablished connections
    -A INPUT -m conntrack ! -i lo --ctstate RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p icmp -m icmp --icmp-type echo-request -j ACCEPT
    -A INPUT -p udp -m udp -m conntrack --dport 33434:33534 --ctstate NEW -j REJECT
    # Anti spoofing rule
    -A INPUT ! -s 192.168.0.0/24 -i ens18 -j LOG  --log-prefix "SPOOFED PKT "
    -A INPUT ! -s 192.168.0.0/24 -i ens18 -j DROP
    # LAN TO PROXY LOCAL
    -A INPUT -p tcp -m state -s 192.168.0.0/24 -i ens18 --dport 8080 --state NEW -j ACCEPT
    # ACCESS TO WEB REPORTS
    -A INPUT -p tcp -m state -s 192.168.0.2/24 -i ens18 --dport 80 --state NEW -j ACCEPT
    # ACCESS TO SSH
    -A INPUT -p tcp -m state -s 192.168.0.2/24 -i ens18 --dport 22 --state NEW -j ACCEPT
    # TIME SYNC FOR LAN
    -A INPUT -p udp -i ens18 -m state --sport 123 --state NEW -j ACCEPT
    # WEBMIN ACCESS
    -A INPUT -p tcp -m state -s 192.168.0.2/24 -i ens18 --dport 10000 --state NEW -j ACCEPT
    # LOG the rest and drop by default input chain
    -A INPUT ! -i lo -j LOG  --log-prefix "DROP INPUT " --log-ip-options --log-tcp-options
    -A OUTPUT -m state --state INVALID -j LOG  --log-prefix "DROP INVALID " --log-ip-options --log-tcp-options
    -A OUTPUT -m state --state INVALID -j DROP
    -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    # ##### OUTPUT chain ###### ## ACCEPT rules for allowing connections out
    -A OUTPUT -p tcp -m state --dport 21 --state NEW -j ACCEPT
    -A OUTPUT -p tcp -m state --dport 80 --state NEW -j ACCEPT
    -A OUTPUT -p tcp -m state --dport 443 --state NEW -j ACCEPT
    -A OUTPUT -p udp -m state --dport 123 --state NEW -j ACCEPT 
    
     # external DNS servers (only reachable, no recursion enabled) 
    -A OUTPUT -p udp -m state -d XXX.XXX.XXY.131 --dport 53 --state NEW -j ACCEPT
    -A OUTPUT -p tcp -m state -d XXX.XXX.XXX.132 --dport 53 --state NEW -j ACCEPT
    
    -A OUTPUT -m state -d XXX.XXX.XXX.68 --state NEW -j ACCEPT
    **# TRYING TO REACH JITSI SERVER
    -A OUTPUT -m state -d XXX.XXX.ZXX.XXX --state NEW -j ACCEPT**
    -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
    # ##### FORWARD chain ###### Accept relate or stablished connections
    -A FORWARD -m state --state INVALID -j LOG  --log-prefix "DROP INVALID " --log-ip-options --log-tcp-options
    -A FORWARD -m state --state INVALID -j DROP
    -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A FORWARD ! -s 192.168.0.0/24 -i ens18 -j LOG  --log-prefix "SPOOFED PKT "
    -A FORWARD ! -s 192.168.0.0/24 -i ens18 -j DROP
    
    # prevent forwarding packets for connections initiated from the outside (spoofing)
    -A FORWARD -m state -i ens19 --state NEW -j DROP
    # ## default log rule
    -A FORWARD ! -i lo -j LOG  --log-prefix "DROP FORWARD " --log-ip-options --log-tcp-options
    COMMIT
    # Completed
    # Generated by webmin
    *mangle
    :OUTPUT ACCEPT [0:0]
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :PREROUTING ACCEPT [0:0]
    :POSTROUTING ACCEPT [0:0]
    COMMIT
    # Completed
    # Generated by webmin
    *nat
    :OUTPUT ACCEPT [0:0]
    :INPUT ACCEPT [0:0]
    :PREROUTING ACCEPT [0:0]
    :POSTROUTING ACCEPT [0:0]
    
    # SOURCE NAT FOR LAN NETWORK ON
    -A POSTROUTING -o ens19 -j SNAT --to-source 192.168.1.2
    # MASQUERADE (FOR DYNAMIC IP ADDRESSS IN CASE OF DHCP MODEM)
    -A POSTROUTING -s 192.168.0.0/24 -o ens19 -j MASQUERADE
    
    COMMIT
    # Completed

**** 使用这些相同的防火墙规则,我们可以访问服务器上的视频会议https://meet.jit.si没有问题。xxx.xxx.xxx.xxx 的 jitsi 服务器管理员认为只需要访问端口 UDP 10000 和 TCP 4443(正如我所解释的那样),当然还有 443(由网络代理处理)

相关内容