FTP 수동 모드 (Filezilla) Windows Server 2012 가끔 "426 연결이 닫혔습니다. '' "의 전송이 중단되었습니다.


9

모두 안녕하십니까,

MS Azure에서 호스팅되는 WIN 2012 R2 서버에서 FileZilla FTP 서버 (수동 모드)를 호스팅하고 있습니다.

FTP 전송은 일반적으로 잘 작동합니다. 여러 FTP 업로드 및 검색이 매일 실행되고 있습니다.

수동 모드를 허용하기 위해 Azure Portal / 측면에서 상대적으로 넓은 범위의 포트 (엔드 포인트)를 열었습니다.

산발적으로 (평균 2 일에 한 번) 다음과 같은 FTP 전송 문제가 나타납니다.

8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> MDTM dev_updates/file1

8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 213 20160728071048

8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> MDTM dev_updates/file2

8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 213 20160728071048

8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> MDTM dev_updates/file3

8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 213 20160728071050

8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> CWD dev_updates/Infrastructure/folder

8/8/2016 9:09:59 AM - USER_FILEZILLA (62.154.Y.X)> 250 CWD successful. "dev_updates/Infrastructure/folder" is current directory.

8/8/2016 9:10:00 AM - USER_FILEZILLA (62.154.Y.X)> PASV

8/8/2016 9:10:00 AM - USER_FILEZILLA (62.154.Y.X)> 227 Entering Passive Mode (104,40,Y,X,234,235)

8/8/2016 9:10:00 AM - USER_FILEZILLA (62.154.Y.X)> 426 Connection closed; aborted transfer of ""

8/8/2016 9:10:01 AM - USER_FILEZILLA (62.154.Y.X)> disconnected.

8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> Connected on port 21, sending welcome message...

8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 220-FileZilla Server 0.9.57 beta

8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 220-written by Tim Kosse (tim.kosse@filezilla-project.org)

8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 220 Please visit https://filezilla-project.org/

8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> USER USER_FILEZILLA

8/8/2016 9:10:01 AM - (not logged in) (62.154.Y.X)> 331 Password required for 

언급 한 바와 같이, 매일 (자동화 된) 여러 번의 FTP 전송이 이루어지며 FileZilla FTP 서버에 할당 된 140 개 이상의 포트 범위를 스윕합니다 (패시브 모드에서 작동).

Azure에서 호스팅되는 VM에서 실행되는 Wireshark 캡처가 있습니다. Wireshark 캡처에서 "426 connection closed"이벤트가 실제로 Azure의 VM에서 제공 한 RST와 일치하고 PASV 명령을 실행 한 클라이언트 (예 : 위의 예에서 FTP 서버가 포트가있는 클라이언트 PASV 명령 : 234,235-> 60139; 클라이언트가 전송을 시작하기 위해 포트 60139로 데이터 채널을 열려고 시도합니다.-> FTP 서버가 RST를 발행하여 (Wireshark 캡처에 따라 MS 내에서) 즉시 응답합니다. 클라이언트에게).

FTP 서버 쪽의 임시 포트 할당 문제에 대해 생각했습니다.-> 허용 된 동적 OS 임시 포트 범위를 FTP 수동 포트 범위와 겹치지 않도록 줄였습니다.

netsh int ipv4 set dynamicport tcp start=49152 num=10000

또한 명령을 통해 포트 범위 예약을 netsh 스택에 명시 적으로 추가했습니다.

netsh int ip add excludeportrange protocol=tcp startport=60000 numberofports=141 store=persistent

그래도 문제는 여전히 가끔 발생합니다.

이 웹 사이트와 MS Azure technet 세션에서 Azure가 엔드 포인트 상태를 모니터링하는 방법 (LB 세트의 일부인 경우)에 대한 광범위한 기술 토론을 읽었지만 FTP 수동 전송 (검색 및 업로드)으로 적용 할 수없는 경우 예약 된 FTP 수동 포트 범위 내의 임의 포트에서 일반적으로 정상적으로 작동합니다.

필요한 경우 추가 세부 정보를 제공 할 수 있습니다. 그 동안 서버 및 클라이언트 측의 문제 해결 / 조사에 대한 추가 제안에 감사드립니다 (문제가 네트워크 또는 네트워크 구성과 관련이 없는지 확인).

또한 가능한 서버 측 소켓 가용성 문제에 대해 winsock을 디버그하는 방법에 대한 추가 문제 해결 / 조사 제안 / 팁을 요청하고 싶습니다.


나는 이것이 대답이라고 생각하지 않기 때문에 이것을 주석으로 추가하지만 FileZilla 서버에서 TLS / SFTP를 구성 했습니까? FileZilla를 사용하여 Azure에서 동일한 내용을 얻었습니다 (그래서 귀하의 질문을 찾았습니다). 문제를 정확히 파악하려고하면서 결국 TLS를 끕니다. 저에게는 연결 문제가 해결되었습니다. 나는 당신이 가진 정확한 행동을 가지고 있었고 때로는 연결이 끊어졌습니다 (종종 '패시브 모드로 들어간 후). 나는 이것에 대한 원인을 아직 찾지 못했다 :(.
Roet

또한 PASV 명령에 나열된 포트가 클라이언트와 서버에서 동일한 지 확인하십시오. 외부 IP 설정에 관한 FileZilla 설정으로 인해 일치하지 않습니다. '기본'모드 대신 해결 모드에서 사용했습니다.
Roet

1
참고 : 나는 같은 문제를 보았다. 로그를 보면 426낙태 오류가 항상 다른 세션 뒤에서 몇 초 후에 550권한 거부 오류가 발생 한다는 것을 알았습니다 . 나는 이것이 FileZilla의 버그라고 생각하지만 픽스는 550을 방지하는 것이 었습니다 (우리의 경우 테스트 시스템이 테스트 폴더에 액세스하려고하지만 프로덕션 자격 증명을 사용하려고했기 때문에 해당 시스템의 자격 증명을 수정해야했습니다) .
JohnLBevan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.