ubuntu 上配置端口转发

第一步:

sysctl net.ipv4.ip_forward=1
等同于
编辑/etc/sysctl.conf文件,将net.ipv4.ip_forward=1前面的#注释去掉,保存文件,然后执行sudo sysctl -p使其生效

第二步:

iptables -t nat -A PREROUTING -p tcp -d 192.168.88.100 --dport 8088 -j DNAT --to 39.99.188.214:32767
iptables -t nat -A POSTROUTING -p tcp -d 39.99.188.214 --dport 32767 -j MASQUERADE

内网访问地址(相当于内网网卡的访问地址):192.168.88.100
访问的外网地址:39.98.152.147:32767

 

iptables -t nat -A POSTROUTING -j MASQUERADE
执行了这句上不去网,但可以端口转发,没整明白。
查看状态
iptables -t nat -L -n

 

输入以下命令查看到每个规则chain的序列号。

 

iptables -L -n --line-number

  

根据序列号删除指定一条防火墙规则即可。

iptables -D INPUT 3 #删除INPUT的第三条已添加规则,这里3代表第几行规则

 

删除nat

iptables -t nat -D PREROUTING 1
iptables -t nat -D POSTROUTING 1

 

使用iptables-persistent实现重启后自动启动

  • 首先安装iptables-persistent工具
sudo apt install iptables-persistent
  • 每当设置了新的iptables规则后,使用如下命令保存规则即可,规则会根据ipv4和ipv6分别保存在了/etc/iptables/rules.v4和/etc/iptables/rules.v6文件中。
netfilter-persistent  save
由于 ipt­a­bles-per­sis­tent 在安装时已经把它作为一个服务设置为开机启动了,它在开机后会自动加载已经保存的规则,所以也就达到了永久保存的目的。
其实原理和第一种方法是类似的,只是设置起来会更简单一些。

posted on 2021-07-22 13:57  刘顺利  阅读(4002)  评论(0编辑  收藏  举报

导航