在Rocky Linux 9中通过firewalld配置端口映射的步骤如下:
-
启用IP转发
- 修改
/etc/sysctl.conf
:net.ipv4.ip_forward=1
- 执行
sysctl -p
生效
- 修改
-
配置防火墙规则
# 开启伪装(NAT) sudo firewall-cmd --zone=public --add-masquerade --permanent
添加端口映射(例:将外部80端口映射到192.168.1.100:8080)
sudo firewall-cmd --zone=public \ --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.1.100 \ --permanent
重载配置
sudo firewall-cmd --reload
3. **验证配置**
```bash
firewall-cmd --list-all --zone=public # 查看masquerade和forward-port规则
curl http://公网IP:80 # 测试映射是否生效
注意:
- 若目标地址在本地,可省略
toaddr
- 映射外部端口需确保未被其他服务占用
- 若存在SELinux限制,需配合
semanage
调整策略