在被动模式下,公网端口与私网端口不需要强制一一对应,但必须保证服务器通告的端口与防火墙上的映射配置精确匹配。
你的组网是:客户端 -- 防火墙 -- FTP服务器,且服务器未配置pasv_address。这种情况下,公网端口与私网端口的关系取决于你采用的方案,具体如下:
| 配置方案 | 公网端口 vs 私网端口 | 服务器配置 | 防火墙配置 |
|---|---|---|---|
| 方案一:开启FTP ALG (应用层网关) | 不需关心,ALG自动处理 | 无需配置(可使用默认动态端口) | 仅需映射控制端口(如21),并开启nat alg ftp |
| 方案二:手动映射端口范围 | 必须严格保持端口号一致 | 限制固定的被动端口范围(如60000-60010) | 为该端口范围配置1:1的端口映射 |
ALG能动态解析FTP协议报文,并智能地修改其中的地址和端口信息,是实现无缝穿越NAT的通用解决方案。使用此方案,你不需要关心端口是否一一对应。
配置步骤:
在防火墙上仅映射FTP控制端口(如21)。
开启FTP的ALG功能。
配置安全策略:放行从Untrust到Trust区域的相关流量。
H3C防火墙配置示例(CLI):
192.168.1.10:60001时,ALG会智能地将其替换为1.1.1.1:60001(或一个临时公网端口),客户端收到正确的公网地址后即可正常建立数据连接。如果无法使用ALG,例如流量被TLS加密(FTPS),则只能采用静态映射方案。这时,公网端口必须和私网端口一一对应,因为防火墙无法再通过解析报文来动态替换端口信息。
配置步骤:
在FTP服务器上:限制一个固定的被动端口范围,例如60000-60010。
在防火墙上:为该端口范围内的每一个端口,都创建一条nat server映射规则,并且公网端口必须与内网端口保持一致。
H3C防火墙配置示例(CLI):
1.1.1.1 的 60000 端口精确映射到内网服务器 192.168.1.10 的 60000 端口,60001对60001,以此类推。安全策略:同样,你需要配置安全策略,允许外网客户端访问这些端口范围。
pasv_address,回复给客户端的是私网 IP + 随机高位端口50000~51000防火墙公网映射:60000~61000nat server protocol tcp global 公网IP 60000 61000 inside 私网IP 50000 51000
nat server protocol tcp global 公网IP 50000 inside 私网IP 50000
alg ftp enable
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论