【Linux】端口映射

外部访问http://127.0.0.1(默认端口80)

实际访问http://127.0.0.1:8080

//添加规则

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

//移除规则

iptables -t nat -L -nv --line-numbers

iptables -t nat -D PREROUTING 2

以下解释------文心一言

这些命令是使用 iptables 在 Linux 系统中配置网络数据包过滤和路由规则。iptables 允许用户配置内核级的网络数据包过滤规则,这些规则可以基于源地址、目标地址、端口号、协议类型等多种条件。

  1. iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

    • -t nat: 指定操作的是 NAT(网络地址转换)表。
    • -A PREROUTING: 向 PREROUTING 链添加一条规则。PREROUTING 链用于在数据包路由到其目标之前修改它们。
    • -p tcp: 这条规则仅适用于 TCP 协议的数据包。
    • --dport 80: 这条规则仅适用于目标端口为 80 的数据包。
    • -j REDIRECT: 对匹配的数据包执行 REDIRECT 动作。
    • --to-port 8080: 将数据包重定向到本地机器上的 8080 端口。

这条命令的效果是:将所有进入系统的、目标端口为 80 的 TCP 数据包重定向到本地机器的 8080 端口。

  1. iptables -t nat -L -nv --line-numbers

    • -t nat: 指定查看的是 NAT 表。
    • -L: 列出规则。
    • -nv: 以数字格式和详细模式列出规则。
    • --line-numbers: 显示每条规则的行号。

这条命令的效果是:列出 NAT 表中的所有规则,并显示它们的行号。

  1. iptables -t nat -D PREROUTING 2

    • -t nat: 指定操作的是 NAT 表。
    • -D PREROUTING: 从 PREROUTING 链中删除一条规则。
    • 2: 删除行号为 2 的规则。

这条命令的效果是:从 PREROUTING 链中删除行号为 2 的规则。假设你之前用第一条命令添加了一条规则,并且它现在是 PREROUTING 链中的第二条规则(你可以通过第二条命令查看),那么这条命令就会删除那条规则。

注意:在删除规则之前,最好先确认要删除的规则的确是你想要删除的,否则可能会意外地删除其他有用的规则。

相关推荐
大聪明-PLUS16 小时前
了解 Linux 系统中用于流量管理的 libnl 库
linux·嵌入式·arm·smarc
食咗未16 小时前
Linux USB HOST EXTERNAL VIRTUAL COM PORT
linux·驱动开发
liliangcsdn16 小时前
curl如何发送json文件数据示例
服务器
没有啥的昵称16 小时前
linux下用QLibrary载入动态库
linux·qt
北方的流星16 小时前
华为帧中继配置
运维·网络·华为
飞Link16 小时前
【CentOS】Linux(CentOS7)安装教程
linux·运维·服务器·centos
菩提小狗16 小时前
小迪安全_第4天:基础入门-30余种加密编码进制&Web&数据库&系统&代码&参数值|小迪安全笔记|网络安全|
前端·网络·数据库·笔记·安全·web安全
知识分享小能手16 小时前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04中的过滤器知识点详解(13)
linux·学习·ubuntu
牛奔16 小时前
Linux 的日志分析命令
linux·运维·服务器·python·excel
飞Link17 小时前
【Linux】Linux(CentOS7)配置SSH免密登录
linux·运维·服务器