0

我有一个带有数据库(MySQL)的新 Linux 服务器(Debian 6.0),它像往常一样通过端口 3306 访问。

现在我想通过端口80或443访问由于某些用户的端口问题(因为端口3306经常被网络防火墙阻止)访问数据库。因此必须从端口重定向传输803306保持数据库正常工作。

我试过以下命令:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3306

但我收到以下错误:

iptables:该名称没有链/目标/匹配。

有谁可以帮我解决这个问题?NAT 表为空(PREROUTING, POSTROUTING,OUTPUT没有条目)(用 选中iptables -t nat -n -L

4

1 回答 1

1

在 NAT 功能所需的 iptables 内核模块中:

运行以下命令在内核中加载模块:

  # modprobe iptable_nat
  # modprobe ipt_REDIRECT

确保您在内核中编译了上述模块:

[root@instructor tmp]# grep REDIRECT /boot/config-$( uname -r )
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_BRIDGE_EBT_REDIRECT=m

在 VPS 服务器中:

modprobe使用命令在主机服务器上启用模块

从主机服务器执行以下命令以启用所有模块VPS

vzctl set VEID --iptables iptable_nat --iptables ipt_REDIRECT

在文件中添加规则/etc/vz/conf/veid.conf

IPTABLES="iptable_nat ipt_REDIRECT"
于 2013-02-04T20:56:36.330 回答