RedHat 호스트에서 실행되는 vsftpd 서버와 FTP를 사용하여 서버와 파일을 전송하는 응용 프로그램이 있습니다.
일부 전송은 문제 없이 수행되지만 일부 파일의 경우 오류 426으로 인해 실패합니다. 다른 응용 프로그램(동일한 파일, 동일한 클라이언트 컴퓨터, 동일한 대상, 동일한 사용자) 대신 FileZilla를 사용하여 파일 전송을 시도했는데 작동합니다.
저는 클라이언트 애플리케이션을 제어할 수 없기 때문에 무슨 일이 일어나고 있는지 이해하기 위해 WireShark를 사용했습니다.
No. Time Source Destination Protocol Length Info
59945 53.762728 [client ip] [ftp server] FTP 71 Request: RETR Batch.func
59950 53.763219 [ftp server] [client ip] TCP 74 20→52604 [SYN] Seq=0 Win=29200 Len=0 MSS=1460 SACK_PERM=1 TSval=2261468899 TSecr=0 WS=128
59951 53.763284 [client ip] [ftp server] TCP 74 52604→20 [SYN, ACK] Seq=0 Ack=1 Win=8192 Len=0 MSS=1460 WS=256 SACK_PERM=1 TSval=54157713 TSecr=2261468899
59957 53.763868 [ftp server] [client ip] TCP 66 20→52604 [ACK] Seq=1 Ack=1 Win=29312 Len=0 TSval=2261468900 TSecr=54157713
59958 53.763868 [ftp server] [client ip] FTP 126 Response: 150 Opening BINARY mode data connection for Batch.func (305415 bytes).
59959 53.763904 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59960 53.763936 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59961 53.763951 [client ip] [ftp server] TCP 66 52604→20 [ACK] Seq=1 Ack=2897 Win=131584 Len=0 TSval=54157713 TSecr=2261468900
59963 53.764080 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59964 53.764208 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59965 53.764230 [client ip] [ftp server] TCP 66 52604→20 [ACK] Seq=1 Ack=5793 Win=131584 Len=0 TSval=54157713 TSecr=2261468900
59966 53.764354 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59967 53.764492 [ftp server] [client ip] FTP-DATA 1018 FTP Data: 952 bytes
59968 53.764494 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59969 53.764516 [client ip] [ftp server] TCP 66 52604→20 [ACK] Seq=1 Ack=9641 Win=131584 Len=0 TSval=54157713 TSecr=2261468900
59970 53.764524 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59971 53.764526 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59972 53.764527 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59973 53.764541 [client ip] [ftp server] TCP 66 52604→20 [ACK] Seq=1 Ack=13985 Win=131584 Len=0 TSval=54157713 TSecr=2261468900
59977 53.764651 [client ip] [ftp server] TCP 66 52604→20 [FIN, ACK] Seq=1 Ack=13985 Win=131584 Len=0 TSval=54157713 TSecr=2261468900
59978 53.764705 [client ip] [ftp server] TCP 54 52604→20 [RST, ACK] Seq=2 Ack=13985 Win=0 Len=0
59980 53.764720 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59981 53.764734 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
59982 53.764752 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59983 53.764760 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
59984 53.764766 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59985 53.764774 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
59986 53.764780 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59987 53.764788 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
59988 53.764795 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59989 53.764802 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
59991 53.764985 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59992 53.764987 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59993 53.765008 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
59994 53.765015 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
59995 53.765157 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59996 53.765173 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
59997 53.765186 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
59998 53.765194 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
59999 53.765200 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
60000 53.765212 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
60001 53.765225 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
60002 53.765227 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
60003 53.765228 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
60004 53.765229 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
60005 53.765238 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
60006 53.765244 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
60007 53.765250 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
60008 53.765255 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
60009 53.765261 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
60010 53.765269 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
60015 53.765465 [ftp server] [client ip] FTP-DATA 1514 FTP Data: 1448 bytes
60016 53.765476 [client ip] [ftp server] TCP 54 52604→20 [RST] Seq=1 Win=0 Len=0
60017 53.765484 [ftp server] [client ip] FTP 91 Response: 426 Failure writing network stream.
60018 53.765504 [client ip] [ftp server] TCP 54 52602→21 [ACK] Seq=292 Ack=531 Win=130816 Len=0
60030 53.768012 [client ip] [ftp server] FTP 60 Request: QUIT
60036 53.768691 [ftp server] [client ip] FTP 68 Response: 221 Goodbye.
60037 53.768692 [ftp server] [client ip] TCP 60 21→52602 [FIN, ACK] Seq=545 Ack=298 Win=29312 Len=0
60038 53.768732 [client ip] [ftp server] TCP 54 52602→21 [ACK] Seq=298 Ack=546 Win=130816 Len=0
60042 53.768875 [client ip] [ftp server] TCP 54 52602→21 [FIN, ACK] Seq=298 Ack=546 Win=130816 Len=0
60045 53.769297 [ftp server] [client ip] TCP 60 21→52602 [ACK] Seq=546 Ack=299 Win=29312 Len=0
분명히 서버는 클라이언트에 데이터를 보내기 시작하지만 몇 개의 패킷 후에 클라이언트는 전송을 종료합니다.
이 문제를 해결하기 위해 변경할 수 있는 vsftp 설정이 있나요?
감사해요.
동일한 파일 전송에 대한 FileZilla 로그:
2017-09-29 08:22:15 9980 3 Command: TYPE I
2017-09-29 08:22:15 9980 3 Response: 200 Switching to Binary mode.
2017-09-29 08:22:15 9980 3 Command: PASV
2017-09-29 08:22:15 9980 3 Response: 227 Entering Passive Mode (172,16,10,192,218,176).
2017-09-29 08:22:15 9980 3 Command: RETR Batch.func
2017-09-29 08:22:15 9980 3 Response: 150 Opening BINARY mode data connection for Batch.func (305415 bytes).
2017-09-29 08:22:15 9980 3 Response: 226 Transfer complete.
2017-09-29 08:22:15 9980 3 Status: File transfer successful, transferred 305,415 bytes in 1 second