私はserverfaultを初めて使用するので、悪い動作があれば教えてください:)
serverfault(およびgoogle)で回答を検索しましたが、問題の回答が見つかりません(部分的に必要な回答を見つけることができますが、問題の解決策にそれらを組み合わせるための知識/経験が不足しています)
問題は次のとおりです:-パブリックIPアドレスで使用できるポート81のパブリックサーバーがあります-パブリックに使用できないポート80のローカルサーバーがあります-ユーザーにポート81に接続してもらいたいパブリックIPアドレスであり、ローカルサーバーのポート80に到着します(192.168.98。###)
iptablesで設定する必要があると思いますが、それは私にはかなり霧がかかっています
iptablesでポートフォワードするにはどうすればよいですか? からいくつかの回答を試しましたが、あらゆる種類のエラーが発生します
いくつかの質問:-ローカルサーバーには特別な構成が必要ですか?たとえば、ゲートウェイをパブリックサーバーのIPアドレスに設定する必要がありますか? -/ proc/sys/net/ipv4/conf/ppp0が存在しません、それは問題ですか?
ファイアウォールによってブロックされているポートはありません
私はで実行されているパブリックサーバーを完全に制御できます:
# cat /proc/version
Linux version 2.4.22-1.2115.nptl ([email protected]) (gcc version 3.2.3 20030422 (Red Hat Linux 3.2.3-6)) #1 Wed Oct 29 15:42:51 EST 2003
# iptables --version
iptables v1.2.8
ローカルサーバーのOSがわからず、その構成を制御できません
使用できるiptables設定やその他の構成について教えてください。
まず、ゲートウェイでモデムを実行していない場合は、この/proc/sys/net/ipv4/conf/ppp0
を処理する必要はありません。
最初にやらなければならないことは、次のようにゲートウェイで転送を有効にすることです。
# echo '1' > /proc/sys/net/ipv4/conf/eth0/forwarding (if you are running your live IP on eth0)
次に、次のようにトラフィックを転送します。
# iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.1.2:80
# iptables -A FORWARD -p tcp -d 192.168.1.2 --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
192.168.1.2をマシンの内部IPに置き換える必要があります。また、eth0
を、ゲートウェイにライブIPがあるインターフェースに置き換えます。
そして最後に、あなたが以前に読んだ投稿で与えられているように、あなたはルーティングをチェックすることができます
# ip route
これがお役に立てば幸いです。問題が発生した場合は、元に戻してください。
また、このプロセスで発生したエラーも投稿してください。