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

时间:2022-10-13 20:20:23

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