명령 프롬프트를 통해서만 FTP 연결 가능

명령 프롬프트를 통해서만 FTP 연결 가능

갑자기 사용자가 FileZilla를 사용하여 FTP를 사용할 수 없고 명령 프롬프트를 통해서만 FTP 연결이 이루어졌습니다. 이 문제를 검색했을 때 이 문제에 직면한 serverfault에서 몇 가지 질문을 찾았으며 명령줄이 활성 모드를 사용하고 해결책은 filezilla의 전송 모드를 수동에서 활성으로 변경하는 것이었고 이것이 실제로 작동했기 때문에 응답이 있었습니다. 이전에는 수동 모드에서 잘 작동했는데 왜 이런 일이 발생했는지 알아야 합니다. 모든 클라이언트가 전송 모드를 변경하도록 하는 대신 서버에서 구성해야 하는 것입니까? 우리는 IIS 6에서 FTP 서버를 사용하고 있습니다.

미리 감사드립니다

답변1

클라이언트에서 서버로의 데이터 채널에 대한 임의의 높은 포트가 이제 방화벽에 의해 차단되었기 때문일 가능성이 높습니다.

수동 FTP를 사용하면 클라이언트가 제어 채널과 데이터 채널을 모두 설정합니다. 데이터 채널은 클라이언트에서 서버의 임의의 상위 포트로 설정됩니다. 임의의 높은 포트가 차단되면 패시브 모드가 실패합니다.

서버 측 방화벽의 관점에서 수동 모드 FTP를 지원하려면 다음 통신 채널을 열어야 합니다.

  • 어디서나 FTP 서버의 포트 21(클라이언트가 연결을 시작함)
  • FTP 서버의 포트 21에서 포트 > 1023(서버가 클라이언트의 제어 포트에 응답함)
  • 어디에서나 FTP 서버의 포트 > 1023(클라이언트는 서버가 지정한 임의의 포트에 데이터 연결을 시작합니다)
  • FTP 서버의 포트 > 1023 - 원격 포트 > 1023(서버는 ACK(및 데이터)를 클라이언트의 데이터 포트로 보냄)

추가 정보:

https://stackoverflow.com/questions/1699145/what-is-the-difference-between-active-and-passive-ftp

액티브 FTP와 패시브 FTP, 확실한 설명
http://slacksite.com/other/ftp.html#passive

관련 정보