관리 메뉴

don't stop believing

filezilla에서 '서버가 알 수 없는 주소와 수동형 응답을 보냈습니다' 본문

Tools/VSFTPD

filezilla에서 '서버가 알 수 없는 주소와 수동형 응답을 보냈습니다'

Tongchun 2018.10.16 10:46

vsftpd를 설치하고 FileZilla를 이용해 파일을 올리고 내릴때 아래와 같은 메시지가 보입니다.

'서버가 알 수 없는 주소와 수동형 응답을 보냈습니다'



Passive Mode를 사용하는 FTP 서버가 라우터 밑에 사설 IP로 실행될때 위와 같은 메시지를 받을 수 있습니다.


FTP Client (FileZilla)에서 FTP 서버로 연결 요청 (ftp://123.123.123.123:21)하면

라우터(123.123.123.123)가 내부에 있는 FTP 서버(192.168.0.XX)에 21 포트를 사용해 연결 요청

그러면, FTP 서버는 자신의 IP + 데이터 전송용으로 개방할 포트 범위 (passive mode이므로)를 클라이언트에 전달 합니다.(192.168.0.XX:5000 ~ 6000)

FTP Client (FileZilla)에서는 123.123.123.123으로 요청했는데 192.168.0.XX로 왔으니... 이게 뭐지? 내가 보낸 IP가 아닌데... 그냥 먼저 보낸 IP로 계속 보내자...

'서버가 알 수 없는 주소와 수동형 응답을 보냈습니다. 대신 서버 주소를 사용합니다.'


이렇게 되는 것입니다.

이걸 방지하려면 FTP 서버에서 Client로 보내는 자신의 IP를 별도로 설정해 주면 됩니다.


FTP 서버에서 config를 엽니다.

$ sudo vim /etc/vsftpd.conf

vsftpd.conf 파일에 pasv_address 옵션을 추가합니다. 값으로는 FTP가 연결되는 공인 IP를 넣습니다.

pasv_address=123.123.123.123

파일을 저장하고 ftp를 재시작 해줍니다.

참고로 실행되고 있는 ftp 서버를 재시작 해주기 전에 ftp에 연결되어 있는 client를 확인해 보고 싶다면 아래 명령으로 확인할 수 있습니다.

ps axuw | grep vsftp


현재 tongchun 계정이 연결되어 있네요. 접니다.

ftp 서버를 재시작 해줍니다.

$ sudo systemctl restart vsftpd

다시 FTP에 접속해 파일을 업로드하거나 다운로드 할때 메시지는 보이지 않습니다.



0 Comments
댓글쓰기 폼