FTP "425 데이터 연결을 열 수 없습니다"는 명령 프롬프트를 사용할 때만 발생합니다.

FTP "425 데이터 연결을 열 수 없습니다"는 명령 프롬프트를 사용할 때만 발생합니다.

내 컴퓨터는 모두 단일 라우터 뒤에 있습니다. 그 중 하나에서 FileZilla 서버가 실행되고 있습니다.

배치 스크립트와 Window에 내장된 ftp.exe를 사용하여 서버에 대한 업로드를 자동화하려고 합니다. 라우터 외부에서 내 서버에 액세스할 수 있도록 동적 DNS 서비스를 설정했으며 라우터에서 내 서버로의 포트 전달을 설정했습니다. Google Chrome, Windows Explorer 및 FileZilla 클라이언트를 사용하여 연결하고 전송할 수 있습니다.

그러나 ftp.exe를 사용하려고 할 때마다(수동으로 또는 일괄 스크립트로) 서버에 연결할 수 있지만 데이터 연결( LIST, STOR또는 RETR)을 여는 작업을 시도하면 다음 오류가 발생합니다.425 Can't open data connection.

두 컴퓨터의 방화벽 모두에서 ftp.exe를 허용했습니다. 무슨 일이 일어나고 있는지 또는 어떻게 해결할 수 있는지 아이디어가 있습니까? 휴대용 독립 명령줄 클라이언트(다른 파일이 없는 exe만 있음)를 아는 사람이 있으면 ftp.exe를 사용할 필요가 없습니다.

편집하다나는 내 ISP가 21 및 해당 범위의 다른 여러 포트를 포함하여 많은 포트를 차단한다는 것을 알고 있습니다. 이는 모두 포트 2121에 설정되어 있으며 패시브 포트는 2122-2142로 설정되어 있으며 모두 라우터에서 전달되었습니다.
아마도 ftp.exe는 데이터 연결을 위해 ISP가 차단한 특정 포트만 사용할 것입니까? 그렇다면 이것을 어떻게 바꾸겠습니까?

답변1

일반 활성 FTP는 전송을 위해 별도의 서버 시작 데이터 연결을 사용하고 일반 포트 21 연결만 제어 채널로 사용합니다. 그러나 클라이언트가 방화벽 뒤에 있으면 방화벽이 이 연결을 차단할 가능성이 높습니다. 나는 Chrome, Explorer, FireZilla 등이 원래 클라이언트에서 시작한 연결이 제어 및 데이터 채널로 사용되는 수동 모드를 시도할 만큼 똑똑하다고 생각합니다.

Windows의 기본 CLI FTP 클라이언트는 수동 모드를 지원하지 않는 것 같습니다. 따라서 다음으로 전환해야 합니다.NcFTP. 또는 아마도 더 나은 옵션은 대신 SFTP를 사용하는 것입니다. FTP는 안전하지 않으며 실제로 LAN에서만 사용할 수 있습니다. SFTP는 완전히 암호화되어 있으며 데이터 및 명령에 단일 채널만 사용합니다. CLI SFTP 클라이언트가 필요한 경우,PSFTP좋은 선택입니다.

답변2

나에게도 이런 문제가 있었다. 해결책은 바이러스 백신(제 경우에는 McAfee)의 방화벽을 중지하는 것이었고 FTP 포트를 차단하는 것이었습니다.

답변3

Windows FTP CLI는 PASSIVE 모드를 지원합니다. 패시브 모드로 들어가려면 "quote pasv"를 사용하세요.

관련 정보