???????????????????? 公司刚搭建的生产环境 Centos6.5 阿里云服务器,需要在上面发布tomcat应用 端口为80(浏览器默认端口), 但是linux 系统 非root用户不能启动小宇1024的端口,想到的解决方案是 在iptables上做文章,使用iptable的转发规则将访问到80的tcp服务转发到8080 端口;操作如下:
?
登录root用户执行如下命令:
?
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
?这样tomat可以是任意大于1024的端口,此处使用8080(tomcat默认);
?
?
??? 最近考虑到安全性的需要在应用服务器前段加一个nginx代理,将静态文件放到前段供应用请求,动态内容请求服务器,这样直接使用nginx服务器监听80端口,然后转发到tomcat的8080应用上。配置完效果不理想,遂想到之前的iptables转发规则还在,所以决定将iptables的转发规则去掉,
?
???? 由于不是专业的运维人员所以百度之,参考其中的一篇博客http://www.2cto.com/os/201212/178521.html
?发现其中iptables -L -n 命令后根本没有显示防火墙规则,
???????????????????????
?
本来想直接通过service 命令直接关闭防火墙的,后来想起其他命令都有status参数,决定敲敲看,iptables是否启动,发现如下结果;
?
? ? ? ? 决定使用? 如下命令,
iptables -D PREROUTING 1
?
?????? 结果还是悲剧,继续百度中找到一篇文章,http://blog.163.com/xychenbaihu@yeah/blog/static/132229655201212705752493/ ? ? 发现其中-D命令可以输入原来的 完整命令,决定将之前转发的规则-A 换成-D 再执行一遍,嘿~真就给蒙对了,
?
??? 完整命令:
iptables -t nat -D PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
?结果在使用service iptables status 查看发现之前的那条80的没有了:
???????????????????
?
?
?
以上就是一个非专业运维人员的一个运维实例,悲催的运维(⊙o⊙)/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~/(ㄒoㄒ)/~~
?
?
nginx 安装参考:
http://www.ttlsa.com/nginx/use-nginx-proxy/
http://my.oschina.net/ramboo/blog/223408
http://www.cnblogs.com/jianxie/p/3990377.html
?
iptabls 命令规则:
?
http://blog.163.com/xychenbaihu@yeah/blog/static/132229655201212705752493/
http://www.2cto.com/os/201212/178521.html
?
?
?
?
原文:http://314649444.iteye.com/blog/2253489