仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1496|回复: 9
打印 上一主题 下一主题

[shell编程] 来一发shell剧本转发80端口数据包

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 20:14:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎大家来到仓酷云论坛!开辟基于Node.js的WEB使用很便利,可是办事端口成绩很蛋疼,因为Linux内核划定一般用户只能利用年夜于1024的端标语,以是利用一般用户运转Node.js办事就不克不及监听80端口


注重:万万不要图费事间接利用ROOT用户运转Node.js办事!这将带来没法估计的宁静成绩!

可是利用80端口作为HTTP默许端口这一习气是从MS时期就持续至今的,怎样办呢?网上有人口若悬河地说用NginX做反向代办署理之类的,实在我以为没需要这么夸大,只必要利用ROOT用户做一个一般端口与80端口的数据转发就行了,利用iptables语句以下:
复制代码代码以下:
iptables-tnat-APREROUTING-ptcp--dport80-jREDIRECT--to-port你的端标语

利用以上这条语句必要注重以下几点:
1.这条语句是一时性的,办事重视启后生效。
2.假如实行过这类语句以后,又想把80端口绑定转发到其他端口上往的话,你要先利用
复制代码代码以下:

#检察今朝端口转发划定规矩
iptables--line-numbers--listPREROUTING-tnat
#从下面语句输入的列表中找到本人之前绑定转发的端口的纪录的行号,然后用上面这句删失落这笔记录来删除转发,并且最蛋疼的是你不克不及指定转发划定规矩的特性来删除纪录,你只能告知它“删除第几行”。
iptables-tnat-DPREROUTING行号


3.利用ArchLinux的童鞋们必要注重了,大概因为内核短少模块(是iptables仍是nat来着?)而不克不及用上述语句来设置绑定转发端口,必要从头编译内核大概模块。
介于以上蛋疼成绩,我写了一个剧本,来完成主动删除纪录和主动绑定:

复制代码代码以下:
#!/bin/bash
#剧本书院www.jbxue.com
if[$#=1];then
if[$1-ge0];then
if[$1-le65535];then
#Deletealloldbindings
forline_numin$(iptables--line-numbers--listPREROUTING-tnat|grepdpt:http|awk{print$1})
do
LINES="$line_num$LINES"
done
forlinein$LINES
do
iptables-tnat-DPREROUTING$line
done
unsetLINES

#Makeanewbinding
iptables-tnat-APREROUTING-ptcp--dport80-jREDIRECT--to-port$1
echo"Port80isboundwith$1!"
exit1
fi
fi
fi
echo"PleaseinputONEPORTNUMBER!"


只必要将下面代码保留为文件(如bind80)并增加实行权限,利用以下指令便可扫除之前的纪录并将新端口举行绑定转发:
复制代码代码以下:

sudobind80端标语


如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!
柔情似水 该用户已被删除
沙发
发表于 2015-1-15 07:58:56 | 只看该作者

来一发shell剧本转发80端口数据包

前一段又听说微硬公司的自动文章机出来了,估计在这儿做测试呢。
爱飞 该用户已被删除
板凳
发表于 2015-1-17 22:48:28 来自手机 | 只看该作者
其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。
分手快乐 该用户已被删除
地板
发表于 2015-1-26 23:35:27 | 只看该作者
未来的学习之路将是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。
飘灵儿 该用户已被删除
5#
发表于 2015-2-5 08:53:27 | 只看该作者
熟悉并掌握安装Linux,安装是学习的前提。目前较常见的安装方法有二种:
精灵巫婆 该用户已被删除
6#
发表于 2015-2-11 08:31:02 | 只看该作者
得到到草率的回答或者根本得不到任何Linux答案。越表现出在寻求帮助前为解决问题付出的努力,你越能得到实质性的帮助。
变相怪杰 该用户已被删除
7#
发表于 2015-3-2 08:08:16 | 只看该作者
熟悉并掌握安装Linux,安装是学习的前提。目前较常见的安装方法有二种:
金色的骷髅 该用户已被删除
8#
发表于 2015-3-11 05:45:05 | 只看该作者
查阅经典工具书和Howto,特别是Howto是全球数以万计的Linux、Unix的经验总结非常有参考价值通常40%的问题同样可以解决。
海妖 该用户已被删除
9#
发表于 2015-3-17 23:12:07 | 只看该作者
尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.
10#
发表于 2015-3-25 13:01:19 | 只看该作者
为了更好的学习这门课程,我不仅课上认真听讲,课下也努力学习,为此还在自己的电脑上安装了Ubuntu系统。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-4-28 21:02

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表