荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: cycker (晕), 信区: Linux
标  题: 将TCP 端口转发到任意机器上:rinetd介绍
发信站: 荔园晨风BBS站 (2004年12月06日11:45:47 星期一), 转信

本文摘自《Linux Server Hacks》48.将TCP 端口转发到任意机器上
网络
48. 将TCP 端口转发到任意机器上
使非本地服务看上去像是来自本地端口
正如我们在“iptables 的提示和诀窍”中所看到的那样,使用iptables 很
容易将TCP 和UDP 端口从防火墙转发到内部主机上。但是如果您需要
将流量从专用地址转发到甚至不在您当前网络上的机器上,又该怎么办
呢?可尝试另一个应用层端口转发程序,如rinetd。
这些代码有点古老,但很短小、高效,对于解决这种问题来说是非常完
美的。解压缩该档案文件并简单地运行make命令,您将看到一个rinetd
二进制数,允许您将TCP 端口转发到您期望的内容。不幸的是,rinetd
不支持UDP 端口。
配置文件极为简单:
[Source Address] [Source Port] [Destination Address] [Destination Port]
在每一单独的行中指定每个要转发的端口。源地址和目的地址都可以是
主机名或IP 地址,IP 地址0.0.0.0 将rinetd 绑定到任何可用的本地IP
地址上:
0.0.0.0 80 some.othersite.gov 80
216.218.203.211 25 123.45.67.89 25
0.0.0.0 5353 my.shellserver.us 22
将该文件保存到/etc/rinetd.conf,并将rinetd复制到容易找到的位置(例
如/usrl local/sbin/)。然后简单地运行rinetd 开始启动该命令。
第一个示例将所有去往任意本地地址的Web 流量转发到some.othersite.
gov 上。注意,这只有在本地端口80 上未绑定其他进程(如Apache)时
才有效。
下一步将去往2 1 6 . 2 1 8 . 2 0 3 . 2 1 1 的入站S M T P 流量转发到位于
123.45.67.89 的邮件服务器上(但其他本地IP 地址上未绑定任何SMTP
代理)。最后的示例将端口5353 上的流量转发到myshellserver.us 的ssh
网络服务器上。这些设置在没有NAT或任何特殊核心配置的情况下都能有效
工作。简单地运行rinetd,rinetd将在后台运行并启动对指定端口的监听。
当你的服务器要重新编号或物理位置变化而改变IP地址时你就能切实感
受到这个工具的好处了,因为服务看上去就像保留在原始IP 地址(即便
它们实际上完全是来自其他网络)上。如果仅仅是绑定大于1024的端口,
那么rinetd就不需要以root账户来运行。这种小工具很值得放在身边,以
便随时调用TCP 端口间接寻址。
另请参阅:
● http://www.boutell.com/rinetd/
● 第47 小节“iptables 的提示和技巧”

--
there are too many if ... else ..., and it always else.
※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.80.114]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店