kl个人博客 首页>>服务器/运维>>linux下将80端口转发到8080

linux下将80端口转发到8080

应用场景

今天来了个新服务器,tomcat部署了一个项目,绑定到80端口,为了安全我们使用非root用户进行启动,但是项目启动木有问题外网老是访问不到,然后换8080ok。。后来使用 netstat -an | grep 80查看端口监听情况,发现80端口木有被监听!经查明,原来,非root用户不能监听1024以下端口号。所以这里需要使用linux的端口转发机制,把到80端口的服务请求都转到8080端口上,项目还是绑定8080端口。

操作实例(Centos为例)

Centos6及以下可使用如下方式

root账户执行如下

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

然后保存到iptables:

service iptables save

Centos7可使用如下命令,7的默认防火墙使用firewall来管理了

执行如下

firewall-cmd --permanent --add-rich-rule 'rule family=ipv4  forward-port port=80 protocol=tcp to-torp=8080'

重新加载配置
firewall-cmd --reload   
设置生效
systemctl restart  firewalld.service 

kl个人博客