VSFTPD : “서버가 알 수 없는 주소와 수동형 응답을 보냈습니다. 대신 서버 주소를 사용합니다.” 오류 해결법

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

VSFTPD로 구축한 FTP 서버에 파일질라(FileZilla) FTP 클라이언트(Client)를 통해 접속하다보면 위와 같은 오류 메세지를 접하게 될 때가 있습니다.

일단 파일질라 클라이언트에서 “편집 – 설정”으로 진입하여 위 스크린 샷처럼 설정하면 FTP서버에 접근 가능하므로 실질적으로 문제가 되지는 않을 것이라 생각합니다. 다만 기분이 나쁠 뿐.

FTP서버가 공유기에 연결된 상태에서 패시브 모드(Passive Mode)로 작동하고 있다면 나타나는 증상인데, 패시브모드가 작동하는 방식을 생각해보면 증상이 자연스럽게 이해될 것입니다.

① FTP 클라이언트가 연결을 요청(ftp://123.123.123.123:21)
② 공유기(123.123.123.123)가 FTP 서버(192.168.XXX.XXX)에 연결요청을 전달.
③ FTP 서버가 자신의 주소+데이터 전송용으로 개방할 포트범위를 FTP클라이언트에 통보(192.168.XXX.XXX:5000~6000)
④ FTP클라이언트의 반응 : 응? 192.168.XXX.XXX???

이런 식인 거죠. 결국 서버 측에서 주소 전달을 똑바로 하게끔 세팅하면 되는 겁니다.
VSFTPD 설정파일에는 공유기 DHCP로 할당된 주소 대신 실제 IP주소를 전달하도록 하는 옵션이 있더군요.
우분투 기준으로 /etc/vsftpd.conf 을 열어서

pasv_address=123.123.123.123

이런 식으로 적어주고 저장(123.123.123.123 자리에 실제 IP주소를 넣습니다.). 빠져나와서 VSFTPD 서비스를 재시작하면 처리는 끝납니다.

CC BY-NC-ND 4.0