IPTABLES は、192.168.1.1 ポート 21516 から 192.168.2.3 ポート 80 にトラフィックをルーティングします。

IPTABLES は、192.168.1.1 ポート 21516 から 192.168.2.3 ポート 80 にトラフィックをルーティングします。

私はDebian / Linux Bullseye(バージョン11)を使用しています。

私が達成したいのは、Linuxファイアウォールを介したポート転送にIPTABLESを使用するようにTabloTVを設定することです。私のLinuxファイアウォールには2つのイーサネットカード(実際にはeth0 enp0s25)とeth1(たとえば内部)、MASQおよびFORWARDトラフィック用の2つの別々のネットワークがあります。

  • eth0192.168.1.0/24 実行(またはenp0s25特定の場合)
  • MASQ モノクロとポートの両方を転送
  • eth1192.168.2.0/24 実行

しかし、私が望むのは、ファイアウォール内の特定のコンピュータを設定して次のことを行うことです。

  • (ファイアウォールIP 192.168.1.1ポート21516から192.168.2.3のポート80にトラフィックをリダイレクト)192.168.2.3:80を外部ポート番号21516にリダイレクト
  • (ファイアウォールIP 192.168.1.1ポート21517から192.168.2.3のポート8887にトラフィックをリダイレクト)192.168.2.3:8887を外部ポート番号21517にリダイレクト

マイファイアウォールの外部IPは192.168.1.1ですが、内部ファイアウォールIPは192.168.2.1で、ポートトラフィックを再ルーティングしたい内部コンピュータは192.168.2.3です。

私は以下を試しました:

  • このラインは以前にMASQの一部として存在していました。
    sudo iptables -A FORWARD -d 192.168.2.0/24 -j ACCEPT 
    sudo iptables -A FORWARD -s 192.168.2.0/24 -j ACCEPT 
    
  • その後、次の行を追加しました。
    sudo iptables -A POSTROUTING -s 192.168.2.0/24 -o tun0 -j MASQUERADE #this is allow traffic to run on my VPN
    sudo iptables -A POSTROUTING -s 192.168.2.0/24 -o enp0s25 -j MASQUERADE #this is allow traffic to run between eth0 and eth1
    sudo iptables -A PREROUTING -p tcp -m tcp --dport 21516 -j DNAT --to-destination 192.168.2.3:80 
    sudo iptables -A PREROUTING -p tcp -m tcp --dport 21517 -j DNAT --to-destination 192.168.2.3:8887
    sudo iptables -A POSTROUTING -d 192.168.2.3/32 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.1.1:21516 
    sudo iptables -A POSTROUTING -d 192.168.2.3/32 -p tcp -m tcp --dport 8887 -j SNAT --to-source 192.168.1.1:21517
    

それでも私には効果がありません。誰にもアイデアはありますか?

ベストアンサー1

おすすめ記事