我有一个Windows 2003 Web服务器坐在思科Pix 515防火墙后面。 HTTP访问是好的,但我不能使FTP访问工作。
我正在尝试的configuration:
fixup protocol ftp 20 static (inside,outside) <external-IP> <internal-IP> netmask 255.255.255.255 0 0 conduit permit tcp host <external-IP> eq www any conduit permit tcp host <external-IP> eq ftp-data any conduit permit tcp host <external-IP> eq ftp any
我也试过“fixup protocol ftp 21”和“no fixup protocol 20”; 因为他们没有工作,我删除了他们。
它连接成功,我input我的用户名和密码就好了。 当我尝试任何命令我得到:
C:\>ftp <server-name> Connected to <server-name>. 220 Microsoft FTP Service User (<server-name>:(none)): <username> 331 Password required for <username>. Password: 230 User <username> logged in. ftp> dir 500 Invalid PORT Command. 150 Opening ASCII mode data connection for /bin/ls.
它永远坐在那里。 我可以在eventvwr上看到服务器在达到configuration的超时后断开连接。
如果我尝试从Internet Explorer中收到消息框:
200 Type set to A 500 Invalid PORT command 500 'LPRT 6,16,0,0,0,0,0,0,0,0,9,4,0,0,0,0,34,113,2,6,71': command not understood
从我的局域网到这台服务器的FTP工作正常。
谁能帮我? 非常感谢!
去掉:
fixup protocol ftp 20
只需添加:
fixup protocol ftp
没有端口号。 一个端口号是不需要的。 除此之外,您可能需要发出明确的xlate以使其立即生效…但是,这将断开任何/所有活动连接(并可能导致其他问题)。
编辑添加:
正如Zephyr在上面的评论中提到的那样,在思科用inspectreplacefixup时,知道您运行的是哪个版本的PIX软件是非常重要的。