У меня есть веб-сервер Windows 2003, расположенный за межсетевым экраном Cisco Pix 515. HTTP-доступ в порядке, но я не могу заставить работать FTP-доступ.
Конфигурация, которую я пробую:
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
Я также пробовал «протокол исправлений ftp 21» и «протокол без исправлений 20»; поскольку они не работали, я удалил их.
Он успешно подключается, я просто набираю имя пользователя и пароль. Когда я пробую любую команду, я получаю:
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 я вижу, что сервер разрывает соединение по истечении заданного мной тайм-аута.
Если я попытаюсь использовать 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
без номера порта. Номер порта не нужен. В дополнение к этому вам может потребоваться выполнить clear xlate, чтобы он сразу вступил в силу ... однако это отключит все / все активные соединения (и может вызвать другие проблемы).
Отредактировано для добавления:
Как Зефир спросил в комментариях выше, важно знать, какую версию программного обеспечения PIX вы используете, поскольку Cisco заменила исправление на inspect.