文章詳情頁
linux端口映射命令是什么?如何使用iptables做端口映射shell?
瀏覽:84日期:2023-07-12 14:05:43
說到端口映射,我們首先想到的是通過Windows系統對對象進行內網穿透,以讓Windows可以在本地磁盤中看到映射的目標,而在linux環境下進行端口映射shell則需要使用iptables命令,具體步驟見下文linux端口映射命令介紹。
linux端口映射命令:
情形一:跨網絡、跨主機的映射Full-Nat
我們想到達主機B的80端口,但是由于網絡限制可能無法直接完成。但是我們可以到達主機A的8080端口,而主機A可以直接到達B的80端口。
這時候可以使用iptables,將主機B的80端口映射到主機A的8080端口,通過訪問A的8080相當于訪問B的80。實現如下:
在主機A上直接如下命令,實現端口映射的Full-Nat
01#!/bin/bash02pro='tcp'03NAT_Host='Host_A'04NAT_Port=808005Dst_Host='Host_B'06Dst_Port=8007iptables -t nat -A PREROUTING -m -p --dport -j DNAT --to-destination :08iptables -t nat -A POSTROUTING -m -p --dport -d -j SNAT --to-source復制代碼#!/bin/bashpro='tcp'NAT_Host='Host_A'NAT_Port=8080Dst_Host='Host_B'Dst_Port=80iptables -t nat -A PREROUTING -m -p --dport -j DNAT --to-destination :iptables -t nat -A POSTROUTING -m -p --dport -d -j SNAT --to-source說明:
NAT_Pro表示NAT的協議,可以是tcp或udp
NAT_Host表示中間做端口映射的主機。這里也就是主機A
NAT_Port表示中間做端口映射的端口。這里也就是主機A的8080口
Dst_Host表示被NAT的主機。這里也就是主機B
Dst_Host表示被NAT的端口。這里也就是主機B的80口
情形二:主機內部的端口重定向
我們可能需要將訪問主機的7979端口映射到8080端口。也可以iptables重定向完成。
01iptables -t nat -A PREROUTING -p tcp --dport 7979 -j REDIRECT --to-ports 8080復制代碼iptables -t nat -A PREROUTING -p tcp --dport 7979 -j REDIRECT --to-ports 8080注意問題:
需要打開ip_forward功能:
01echo '1' > /proc/sys/net/ipv4/ip_forward復制代碼echo '1' > /proc/sys/net/ipv4/ip_forward以上便是關于linux端口映射命令的一些案例,在不同的情形下我們都可以使用iptables命令來完成這些操作。
標簽:
Linux系統
相關文章:
1. Win11系統安裝不了是怎么回事?Win11系統安裝不了是什么原因?2. win10藍屏笑臉提示重啟原因詳細介紹3. win10藍牙無法連接音箱怎么辦4. Win10打開Vmware就藍屏怎么辦?5. 怎樣禁止Win7系統IE瀏覽器自動啟動程序?禁止Win7系統IE瀏覽器自動啟動程序的方法介紹6. win7系統怎么更改電腦的鎖屏時間?7. 大番薯U盤安裝Win7系統的詳細操作步驟8. Win10 19044.1415版本連接共享打印機0x0000011b怎么辦?9. Win11卓越模式有什么用?Win11卓越模式詳細介紹10. Win11桌面快捷方式不見了怎么辦?Win11桌面快捷方式消失解決方法
排行榜
