`

自定义端口,将端口80的TCP传递给8081

阅读更多
修改server.xml中Shutdown port,Connector port,ajp port和Redirect port的端口

从8080端口改变端口
<Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" />
               
               
将端口80的TCP连接传递给端口8080
在Linux下检查iptables特性是否处于enabled状态
[root@wls-132 bin]# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
[root@wls-132 bin]# 
如果看到相似的输出,一般就是可用状态。

通过下列两条命令,你可以让80端口的所有TCP连接按机器配置寻址到所有网络目的地址
[root@wls-132 bin]# iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
[root@wls-132 bin]# iptables -t nat -I OUTPUT -p tcp --dport 80 -j REDIRECT --to-ports 8080
[root@wls-132 bin]# 

(实验时访问不到应用)如果只想把机器配置的一个IP地址的连接传递给8080端口,那么可以再追加目的地址ip是选择性的使用--dst切换开关,如下所示:
[root@wls-132 bin]# iptables -t nat -I PREROUTING -p tcp --dst 192.168.1.106 --dport 80 -j REDIRECT --to-ports 8081
[root@wls-132 bin]# iptables -t nat -I OUTPUT -p tcp --dst 192.168.1.106 --dport 80 -j REDIRECT --to-ports 8081
[root@wls-132 bin]# 

查看过滤规则
[root@wls-132 bin]# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
REDIRECT   tcp  --  anywhere             192.168.1.106       tcp dpt:http redir ports 8081 
REDIRECT   tcp  --  anywhere             anywhere            tcp dpt:http redir ports 8081 
REDIRECT   tcp  --  anywhere             anywhere            tcp dpt:http redir ports 8080 

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
REDIRECT   tcp  --  anywhere             192.168.1.106       tcp dpt:http redir ports 8081 
REDIRECT   tcp  --  anywhere             anywhere            tcp dpt:http redir ports 8081 
REDIRECT   tcp  --  anywhere             anywhere            tcp dpt:http redir ports 8080 

删除过滤规则
[root@wls-132 bin]# iptables -t nat -D PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
[root@wls-132 bin]# iptables -t nat -D PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8081
[root@wls-132 bin]# iptables -t nat -D OUTPUT -p tcp --dport 80 -j REDIRECT --to-ports 8080
[root@wls-132 bin]# iptables -t nat -D OUTPUT -p tcp --dport 80 -j REDIRECT --to-ports 8081

重定向方法的缺点在于:为了显示真实的端口,Tomcat要重写URL。
假定访问的www.example.com。如果一个用户在其浏览器地址位置输入
http://www.example.com/,那么依Web应用程序的内容而定,Tomcat会对重写该地址,
且该用户会在自己的浏览器位置看到http://www.example.com:8080/index.html的地址。

Tomcat会认定请求来源与8080端口,因为他在8081端口上打开了web服务连接器,因此无论何时发送重定向,
它都会追加上端口号8080,除非按如下方式在server.xml连接器配置文件中增加了proxyPort="80"的信息:
    <Connector port="8081" protocol="HTTP/1.1" proxyPort="80"
               connectionTimeout="20000"
               redirectPort="8444" />
               
如果Tomcat充当了主页功能,可以设置proxyName="www.example.com"。

iptables参考:http://caisangzi.blog.51cto.com/6387416/1286432;
http://hi.baidu.com/maimixiande/item/7a54d4c2caac0b25ee4665c0

 

分享到:
评论

相关推荐

    citrix 中文管理操作手册

    将参数传递给已发布的应用程序 53 减少流应用程序的用户权限 53 配置应用程序限制和重要性 54 配置已发布应用程序的音频和加密选项 54 配置应用程序外观 56 禁用或启用已发布的应用程序 56 删除已发布的应用程序 57 ...

    几个hacker程序源码

    2×提供三种方式的连接方式:×Udp单包快速交互目录浏览,×Udp包入反向TCP连接,×常规的TCP主动连接。 3×屏幕查看单屏或连续监控,图象质量自定义(1-100),同时可鼠标与键盘遥控。 4×提供简易搜索,进程管理:...

    python cookbook(第3版)

    15.13 传递NULL结尾的字符串给C函数库 15.14 传递Unicode字符串给C函数库 15.15 C字符串转换为Python字符串 15.16 不确定编码格式的C字符串 15.17 传递文件名给C扩展 15.18 传递已打开的文件给C扩展 15.19 从...

    Delphi编程技巧.rar

    任何动态改变/添加网络设置中的 TCP/IP 的 DNS 地址 让彩色光标出现在Delphi程序中 面向组件的系统开发方法 COM/DCOM中如何传递数组 COM/DCOM的区别与联系 定制Delphi应用程序的系统菜单 Delphi 3中...

    DICOM国际会议暨研讨会:实施心脏病学DICOM统一代理程序–经验总结

    - 作为一个IHE(集成医疗企业)执行过程步骤(PPS)管理软件对图像过程进行跟踪,并作为DICOM将信息传递给第三方PACS(图像归档和连接性系统)。 - 缓冲MPPS信息(N-CREATE和Multiple N-SET),将全数据集发送到心脏...

    harmonyos2-ttn-gateway-connector:用于物联网网关和基于Linux的网关的嵌入式C库,用于连接物联网

    时,与自定义标头和消息协议级别的重大更改相比,我们建立在经过验证且支持良好的消息传递协议之上 使用身份验证时,我们可以根据网关的 ID 和安全密钥来识别网关,而用户定义的 EUI 被认为是不可靠的 使用 Protocol...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    7.10.2 使用例程将本章的知识穿起来 189 7.11 小结:多方位理解Java方法 191 7.12 习题 192 第8章 Java中的包(Package)命名习惯和注释 193 教学视频:43分钟 8.1 Java中的包(Package) 193 8.1.1 Java中的...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    7.10.2 使用例程将本章的知识穿起来 189 7.11 小结:多方位理解Java方法 191 7.12 习题 192 第8章 Java中的包(Package)命名习惯和注释 193 教学视频:43分钟 8.1 Java中的包(Package) 193 8.1.1 Java中的...

    McAfee 8.0 简体中文

    McAfee(R) VirusScan(R) Enterprise ...如果脚本不含有病毒,则将其传送给真正的主机。如果 脚本已感染病毒,则不执行脚本。 - Lotus Notes(电子邮件扫描)。 除基于 MAPI 的电子邮件(例如,...

    基于Linux 的防火墙技术研究

    TCP/UDP 头中的源端口号;同时,内核会记录下 此替换.当外部的返回包到来时(送往防火墙主机 的临时端口),服务器能自动识别它,将此返回包 的IP 地址和端口号替换成内部主机的地址和端 口号,发给内部主机。分组过滤...

    疯狂JAVA讲义

    学生提问:为什么即使我没有给多行文本域编写右键菜单,但当我在多行文本域上单击右键时一样会弹出右键菜单? 418 11.7 在AWT中绘图 418 11.7.1 画图的实现原理 418 11.7.2 使用Graphics类 419 11.8 处理位图 ...

    DELPHI技巧集(集合各种开发源码)

    11 Change_ip_dns.htm 任何动态改变/添加网络设置中的 TCP/IP 的 DNS 地址 1K 12 Colorcour.htm 让彩色光标出现在Delphi程序中 2K 13 Compon_mk.htm 面向组件的系统开发方法 2K 14 Comtech.htm COM/DCOM如何...

    bl-api-cloud,可扩展轻云服务端框架-易语言

    服务端启动端口自定义,默认http服务端80端口,https服务端443。当然本框架出发定性小众领域使用,可以设置其他端口,以免占用重要的web框架接口。 3、扩展便捷 扩展(插件)为DLL文件,只需放入根目录下的/plugins ...

    新版Android开发教程.rar

    己的格式,回避掉需要付给 SUN 有关 JAVA 的授权费用。 对手机制造者的影响 � Android 是款开源的移动计算软件平台,组建了 google 主导的拥有众多产业界巨头的产业联盟,有利于 高效开发、降低成本。 � 由于是源...

    Visual C++程序开发范例宝典(光盘) 第四部分

    实例320 通过串口传递数据 实例321 通过串口控制对方计算机关闭 12.2 加密狗 实例322 将密码写入加密狗 实例323 使用加密狗进行身份验证 12.3 IC卡的应用 实例324 向IC卡中写入数据 实例325 读取IC卡中的...

    Visual C++程序开发范例宝典(光盘) 第八部分

    实例320 通过串口传递数据 实例321 通过串口控制对方计算机关闭 12.2 加密狗 实例322 将密码写入加密狗 实例323 使用加密狗进行身份验证 12.3 IC卡的应用 实例324 向IC卡中写入数据 实例325 读取IC卡中的...

    java编程基础,应用与实例

    21.1.2 端口与套接字 390 21.2 TCP程序设计基础 391 21.2.1 InetAddress类 392 21.2.2 ServerSocket类 393 21.2.3 Socket类 394 21.3 单向通信 396 21.3.1 接收字符串的服务器 397 21.3.2 发送字符串...

    21天学通Java-由浅入深

    继续语句执行 79 4.7 综合练习 79 4.8 小结 80 4.9 习题 81 第5章 数组(精彩视频:52分钟) 83 5.1 如何创建数组 83 5.1.1 创建数组 83 5.1.2 创建多维数组 84 5.2 数组的初始化 85 5.2.1 创建并初始数组元素 85 ...

Global site tag (gtag.js) - Google Analytics