![DMZ 中的 FTP、用于 LDAP 身份验证的 TCP 端口](https://linux22.com/image/512017/DMZ%20%E4%B8%AD%E7%9A%84%20FTP%E3%80%81%E7%94%A8%E4%BA%8E%20LDAP%20%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81%E7%9A%84%20TCP%20%E7%AB%AF%E5%8F%A3.png)
场景:
(外部)---(ASA5510)---(内部)->Windows2008 DC
.........................(非军事区)
..........->Win2008 FTP 服务器
我需要从 DMZ->Inside 打开哪些端口,以便 FTP 用户可以在内部 DC 上进行身份验证?
我已经打开了 389 (Ldap)、636 (安全 Ldap) 和 53 (dns)。但是 ftp 客户端在处理完凭证后总是卡住,并且 FTP 服务器会向您显示事件日志“登录错误”。错误消息表明关闭的端口可能存在问题。
如果我将 ACL 改为“IP”,则意味着所有端口都打开,一切正常。
答案1
FTP 使用两个不同的 TCP 端口。端口 21 用于 ftp 命令,端口 20 用于 ftp 数据。
由于仅允许端口 21 通过防火墙,因此您需要使用被动 ftp 连接。
您可以在登录后通过发出以下命令在 Microsoft 命令行 ftp 客户端中切换到被动模式:
FTP>QUOTE PASV
您应该收到一个 227 响应,表示“进入被动模式”。
此时您应该可以不受约束地继续下去。