ip伪装:在ubuntu里,nat被称为ip伪装,意为”允许来自内网口eno1上使用私网地址(如10.0.0.0/20)的计算机共享外网口eno2上的单个IP地址”
端口重定向:要将外网口eno2上的某个端口转发到位于内网地址10.0.0.X上的某个端口,比如将外网口eno2上的tcp端口80转发到位于10.0.0.3的Web服务器。
2 UFW基本操作:
2.1查看当前状态和防火墙规则
ufw status #Status: active服务激活;如果没有配置规则,将不显示防火墙规则
2.2设置默认动作
ufw default allow/deny #对未配置的端口执行默认允许/拒绝动作
2.3添加允许/拒绝端口的规则
ufw allow 22/tcp #允许22 tcp封包;还可以换成22/udp,表示允许22端口udp封包
ufw deny 22 #拒绝22端口 (udp+tcp)
2.4删除允许/拒绝端口的规则
ufw delete allow/deny 20 #删除规则同添加一致 添加22/tcp就删除22/tcp,不能删除22
2.5启动/关闭/重载防火墙
通过ssh远程连接建议先设置22/tcp允许规则再启动防火墙服务
ufw enable/disable/reload
3防火墙配置转发
3.1首先开启系统的IP转发
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1 #增加或修改该字段,值设为1
3.2生效
sysctl -p
3.3设置防火墙的转发(修改俩个配置文件)
3.3.1修改 /etc/default/ufw
vim /etc/default/ufw
DEFAULT_FORWARD_POLICY="ACCEPT" #该值设为ACCEPT
注意:
# 默认规则内容都包含在 *filter…COMMIT内
# 添加如下内容时注意 *nat…COMMIT不能放在 *filter…COMMIT内
#10.0.0.0/20是内网网段
3.3.2修改 /etc/ufw/before.rules
vim /etc/ufw/before.rules
#在末尾增加以下字段
*nat
:PREROUTING - [0:0]
:POSTROUTING - [0:0]
-A POSTROUTING -s 10.0.0.0/20 -o eno2 -j MASQUERADE
COMMIT
3.3.3重启防火墙,成功
ufw disable
ufw enable
4设置端口重定向:
4.1将外网口eno2上的tcp端口80转发到位于10.0.0.3的Web服务器。
4.1.1编辑/etc/ufw/sysctl.conf
vim /etc/ufw/sysctl.conf
net.ipv4.ip_forward=1
4.1.2编辑 /etc/ufw/before.rules,并在nat段里增加
vim /etc/ufw/before.rules
-A PREROUTING -p tcp -i eno2 --dport 80 -j DNAT --to-destination 10.0.0.3:80
4.1.3增加ufw规则
ufw route allow in on eno2 to 10.0.0.3 port 80 proto tcp
ufw allow 80
#删除以上ufw添加的从eno2口进来并转发到10.0.0.3端口80的数据:
ufw route delete allow in on eno2 to 10.0.0.3 port 80 proto tcp
#拒绝从eno2口进来转发到主机10.0.0.3端口22的数据:
ufw route reject in on eno2 to 10.0.0.3 port 80
4.1.4重启ufw
ufw reload
Was this helpful?
0 / 1