Linux配置完iptables后,重启失效的解决方案

时间:2021-07-17 13:46:09

Linux配置完iptables后,重启失效的解决方案

因为只有root用户才可访问1024以下的端口,非root用户登陆是不能启用80端口的。web service 往往启动1024以上的端口,并通过iptables映射到80.

1、将server.xml中的端口改为8080

2、然后:iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

(如果用到443,也相应执行以上方法)

此时虽然可以访问80端口了,但是一旦服务器关机,或者是重启了之后,还是只能通过8080端口访问了。

解决办法如下:

输入完iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080 后 

执行iptables-save

注意:iptables-save是连在一起的,是一个命令,不是参数

iptables-save 仅仅是列出当前设置,并不是将配置保存

若你用的是 RedHat 系列,应该使用 service iptables save 保存,用 chkconfig iptables on 实现开机启动启用

若不是 RedHat 系列,可以使用下面方法手动保存/恢复配置

保存

iptables-save > /root/iptables.conf

恢复

iptables-restore < /root/iptables.conf