すべての着信TCP接続を最初はポート80に、ポート8090にリダイレクトしようとしています。これは、8090でConfluenceを実行していて、rootとして実行しないようにするためです。 =、これはポート80へのConfluence接続を有効にするための要件です。
このために私はIPTABLESを使用していますが、この奇妙なエラーが発生しています:
root@psbm-ptc01b05:/# iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 8090
iptables: No chain/target/match by that name.
root@psbm-ptc01b05:/# iptables -A PREROUTING
iptables: No chain/target/match by that name.
root@psbm-ptc01b05:/#
Iptablesを使用するのはこれが初めてであり、これを実際に機能させたいだけです。ここで何が悪いのですか?私は何をすべきか?
ありがとう!
編集:追加情報:
私のネットワークインターフェースは次のとおりです。
root@psbm-ptc01b05:~# ifconfig -a
eth1 Link encap:Ethernet HWaddr 00:1c:42:2c:2d:97
inet addr:176.111.109.11 Bcast:176.111.109.255 Mask:255.255.254.0
inet6 addr: fe80::21c:42ff:fe2c:2d97/64 Scope:Link
inet6 addr: 2001:4cc0:3:f::6925/80 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:25458482 errors:0 dropped:0 overruns:0 frame:0
TX packets:628471 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2767947725 (2.7 GB) TX bytes:60340059 (60.3 MB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:466 errors:0 dropped:0 overruns:0 frame:0
TX packets:466 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:109338 (109.3 KB) TX bytes:109338 (109.3 KB)
venet0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:127.0.0.1 P-t-P:127.0.0.1 Bcast:0.0.0.0 Mask:255.255.255.255
inet6 addr: ::2/128 Scope:Compat
UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
venet0:0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.137.96.0 P-t-P:10.137.96.0 Bcast:10.159.255.255 Mask:255.224.0.0
UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
どうやら私はモジュールがロードされていません。これは悪いですか?
root@psbm-ptc01b05:~# lsmod|grep -E "nf_|xt_|ip"
root@psbm-ptc01b05:~#
コマンドlsmod | grep tablesも何も返しません。
Iptables -t nat -L -vnの出力:
root@psbm-ptc01b05:~# iptables -t nat -L -vn
Chain PREROUTING (policy ACCEPT 292K packets, 27M bytes)
pkts bytes target prot opt in out source destination
292K 27M all -- * * 0.0.0.0/0 0.0.0.0/0
Chain POSTROUTING (policy ACCEPT 981 packets, 80153 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 981 packets, 80153 bytes)
pkts bytes target prot opt in out source destination
root@psbm-ptc01b05:~#
もう1つのプローブ:
root@psbm-ptc01b05:~# iptables -L -t nat
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
all -- anywhere anywhere
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
root@psbm-ptc01b05:~#
もっと面白いもの:
root@psbm-ptc01b05:~# lsmod
Module Size Used by
root@psbm-ptc01b05:~#
ちなみにこれはVPSです。
カーネル構成をCONFIG_IP_NF_TARGET_REDIRECT
で確認します
-j REDIRECTターゲットを使用するには、それを有効にする必要があります。
必要なモジュールがロードされていないようです。
ちなみに、どのディストリビューションでどのカーネルバージョンを使用していますか:uname -a
以下のコマンドのいずれかを実行するときに、@ ikrabbeによって言及されているモジュールがリストされていることを確認してください。
grep -i =m /usr/src/linux/.config
cat /proc/modules | grep nat
find /lib/modules/*/ -type f -iname '*.ko' | grep redirect
OSとカーネルのバージョンによっては、簡単にサポートできます。