原文地址:http://phoenix007.iteye.com/blog/712583,转载留存
场景
假如你在用 resin 调试一个 Web 程序,需要频繁地重启 resin。这个 Web 程序需要开在 80 端口上,而 Linux 限制 1024 以下的端口必须有 root 权限才能开启。但是你又不愿意在调程序的时候总是开着一个 root 终端。在这种情况下,你可以把 resin 开在默认的 8080 端口上,然后使用 iptables 来实现和真的把服务开在 80 端口上一样的效果。
方法
将与 80 端口的 TCP 连接转接到本地的 8080 端口上。使用 DNAT (Destination Network Address Translation) 技术可以满足这一要求。因为 iptables 在处理本地连接和远程连接的方法不同,所以需要分开处理。下面假设本机的 IP 是 192.168.4.177
。
远程连接
远程连接指的是由另外一台机器连接到这台机器上。这种连接的数据包在 iptables 会首先经过 PREROUTING 链,所以只需在 PREROUTING 链中作 DNAT。# iptables -t nat -A PREROUTING -p tcp -i eth0 -d 192.168.4.177 --dport 80 -j DNAT --to 192.168.4.177:8080
本地连接
本地连接指的是在本机上,用 127.0.0.1
或者本机 IP 来访问本机的端口。本地连接的数据包不会通过网卡,而是由内核处理后直接发给本地进程。这种数据包在 iptables 中只经过 OUTPUT 链,而不会经过 PREROUTING 链。所以需要在 OUTPUT 链中进行 DNAT。除了对 127.0.0.1
之外,对本机 IP (即 192.168.4.177
) 的访问也属于本地连接。# iptables -t nat -A OUTPUT -p tcp -d 127.0.0.1 --dport 80 -j DNAT --to 127.0.0.1:8080
# iptables -t nat -A OUTPUT -p tcp -d 192.168.4.177 --dport 80 -j DNAT --to 127.0.0.1:8080
注意事项
你也许需要通过以下命令打开 IP 转发:# echo 1 > /proc/sys/net/ipv4/ip_forward
在进行试验时,如果要重新设置 iptables,需要首先清空 nat 表:# iptables -F -t nat
相关推荐
iptables是一个Linux下优秀的nat+防火墙工具
通过iptables实现端口转发和内网共享上网
将本地3389端口 转发到192.168.10.210的22(主要访问到本机的15210端口,就会跳转到192.168.10.210的22) 【步骤】 1、 首先应该做的是/etc/sysctl.conf配置文件的 net.ipv4.ip_forward = 1 默认是0 这样允许...
iptables实现转发ftp的访问请求
在linux平台上用iptables实现数据转发.pdf
通过iptables进行端口转发和映射(需要注意里面的书写顺序)
于是曲线救国,找了国内一台到两边访问都较快的机器做为跳板,做一个端口转发,以加速云机器3389端口的访问。这里记录下思路和操作。 我是T型人小付,一位坚持终身学习的互联网从业者。喜欢我的博客欢迎在csdn上关注...
下面小编就为大家带来一篇利用iptables来配置linux禁止所有端口登陆和开放指定端口的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Linux 环境Iptables关闭端口
利用Iptables实现LVS负载均衡集群研究
Linux下端口转发一般都使用iptables来实现,使用iptables可以很容易将TCP和UDP端口从防火墙转发到内部主机上。如果需要将流量从专用地址转发到不在您当前网络上的机器上,可尝试另一个应用层端口转发程序rinetd,...
该脚本旨在手动处理 Docker iptables 端口转发,适用于您无法让 Docker 自行管理 iptables 的情况,因为它与系统上也尝试管理 iptables 的其他事物发生冲突。 用法 假设/先决条件: systemd是您的 init,容器将由 ...
所以这里需要使用linux的端口转发机制,把到80端口的服务请求都转到8080端口上。 在root账户下面运行一下命令: iptables -t nat -A PREROUTING -p tcp –dport 80 -j REDIRECT –to-port 8080 注意:网上朋友的...
iptables端口映射,硬件iptables的原理简单解析
iptables 简单设置指定端口访问权限新增,删除规则等
本文档详细介绍了通过iptables限制sftp端口连接数的运维操作方法,以及预防CC/DDOS攻击的设置措施.在此分享,希望能帮助到有用到的朋友!
基于Centos7系统部署Rinetd端口转发工具:安装、配置、使用
通过桥接转发方式共享网络,分别可以使用以下方式: 通过ETH0连接互联网,ETH1和wlan1作为下联转发eth0网络 通过wlan0连接互联网,ETH1和wlan1作为下联转发wlan0网络 通过ppp0连接互联网,ETH1和wlan1作为下联转发ppp0...
linux下使用iptables开放80和22端口的详细操作步骤。
linux下设置iptables实现NAT功能