溫馨提示×

Linux 配置端口映射

小億
105
2024-01-05 19:07:47

要在Linux上配置端口映射,可以使用iptables工具來完成。

以下是配置端口映射的步驟:

  1. 檢查是否已安裝iptables。在終端中運(yùn)行以下命令:

    sudo iptables --version
    

    如果沒有安裝,可以使用以下命令安裝iptables:

    sudo apt-get update
    sudo apt-get install iptables
    
  2. 確定要進(jìn)行端口映射的網(wǎng)絡(luò)接口??梢允褂靡韵旅畈榭淳W(wǎng)絡(luò)接口列表:

    ifconfig
    

    找到要進(jìn)行端口映射的網(wǎng)絡(luò)接口的名稱,例如eth0或ens33。

  3. 執(zhí)行以下命令打開端口映射功能:

    sudo sysctl net.ipv4.ip_forward=1
    
  4. 使用iptables命令創(chuàng)建端口映射規(guī)則。以下是示例命令:

    sudo iptables -t nat -A PREROUTING -p tcp --dport <外部端口> -i <網(wǎng)絡(luò)接口> -j DNAT --to-destination <目標(biāo)IP地址>:<目標(biāo)端口>
    

    其中,<外部端口>是要映射的外部端口號,<網(wǎng)絡(luò)接口>是要進(jìn)行映射的網(wǎng)絡(luò)接口的名稱(步驟2中獲得的),<目標(biāo)IP地址>是要映射的目標(biāo)IP地址,<目標(biāo)端口>是要映射的目標(biāo)端口號。

    例如,要將外部端口8080映射到本地的192.168.1.100的80端口上,可以執(zhí)行以下命令:

    sudo iptables -t nat -A PREROUTING -p tcp --dport 8080 -i eth0 -j DNAT --to-destination 192.168.1.100:80
    
  5. 保存iptables規(guī)則,以便重啟后仍然生效。執(zhí)行以下命令:

    sudo sh -c "iptables-save > /etc/iptables.rules"
    
  6. 配置系統(tǒng)重啟后自動加載iptables規(guī)則。打開/etc/network/interfaces文件并添加以下行:

    pre-up iptables-restore < /etc/iptables.rules
    
  7. 重啟網(wǎng)絡(luò)服務(wù)以使配置生效。執(zhí)行以下命令:

    sudo systemctl restart networking
    

現(xiàn)在,配置的端口映射應(yīng)該已經(jīng)生效。外部網(wǎng)絡(luò)可以通過訪問指定的外部端口來訪問內(nèi)部網(wǎng)絡(luò)的目標(biāo)IP地址和端口。

0