여러 ftp데몬들 중에 저는 mysql 연동때문에 pure-ftp를 사용하는데요,
사용중에 보니까 기본적으로 설정되어 있는 21번 포트가 막혀있는 경우가 많더라구요. 원격지의 네트워크망에서 말이지요.
서버에서는 21번을 허용했는데도 불구하고, 클라이언트의 네트워크에서 21번 포트가 막혀있는 경우 말이죠. 심지어 3G를 통한 인터넷에서도 21번 포트가 막혀있더군요.
다른 우회방법을 찾을까하다가, 보니까 21번 포트만 막혀있는 것 같아서… FTP서버 포트를 변경하기로 했습니다.
pure-ftp의 포트 변경과정은 2단계를 가집니다.
-
pure-ftp의 설정변경
-
방화벽 설정변경
-
pure-ftp의 설정변경
/etc/pure-ftpd/conf/Bind 파일을 생성한 뒤, 다음 구문을 입력하고 저장합니다.
[code:27qafqda]*, 2121[/code:27qafqda]
여기서 2121은 앞으로 사용하실 포트번호입니다. 2121 포트를 사용하고 싶지 않으시면 다른 포트로 변경해주세요.
그리고 *은 IP 지정입니다. Listen할 IP를 지정하는 것입니다.
그 뒤, 터미널에서 다음 구문을 입력하여 pure-ftp 데몬을 재실행합니다.
[code:27qafqda]sudo /etc/init.d/pure-ftpd-mysql restart [/code:27qafqda]
재실행한 뒤에 FTP데몬이 2121포트를 Listen하고 있는지 확인해봅니다.
[code:27qafqda]sudo netstat -tnulp | grep ftp[/code:27qafqda]
0.0.0.0.0.0:2121이 나왔다면 성공입니다.
- 방화벽 설정변경
저는 ufw 방화벽을 사용하기 때문에, gui를 통해 간단하게 2121포트를 열고, 21포트를 닫았습니다.
그러나 다른 방화벽을 사용한다면 그에 맞는 방법을 통해 설정하셔야 할 겁니다.
이상입니다.