Linux ETC

 VSFTP 에서 사용하는 port를 변경하기

FTP Server는 기본적으로 아래와 같은 2개의 Port를 사용합니다.

 - FTP Port : 기본 21 port / tcp       (FTP 명령어 송수신)
 - FTP-Data Port : 기본 20 port / tcp  (FTP 데이터 송수신)


ftp는 Active Mode 또는 Passive Mode에 따라 설정 방법이 다르며,
오늘은 Active Mode 에서 포트 변경하는 방법을 설명 합니다.


1. Active Mode에서 FTP를 위한 Port 변경 방법
   Active Mode는 정해진 포트를 사용하여 송수신 합니다.(Default port: 21, 20)

   포트 변경은 아래와 같은 예제로 설명 합니다.

   * FTP 포트로 50021을 사용하고, FTP-Data 포트로는 50020을 사용하도록 설정.

   * 먼저 서버 방화벽에서는 50021, 50020 port가 열려 있어야 합니다.

   * vi /etc/vsftpd/vsftpd.conf 에서 변경 내용 (in CentOS)

    • inetd 모드가 아닌 독립 모드로 vsftp 실행
    listen=YES 

    • FTP를 위한 Listen Port를 지정 함.
    listen_port=50021  

    • 데이터 전송을 위해서 Active Mode를 사용도록 설정 한다.
    • Active Mode에서 FTP 데이터 전송을 위한 디폴트 포트는 20 port 이다
    port_enable=YES  

    • 데이터 전송을 위해서 Passive Mode를 사용하지 못하도록 한다
    pasv_enable=NO   

    • 20번 포트의 데이터전송 연결을 허용 한다.
    connect_from_port_20=YES  
 
    • Active Mode에서 사용할 FTP-Data 포트를 강제로 50020 port로 변경 한다
    ftp_data_port=50020    


vsftpd.conf 수정후 vsftp 데몬을 재시작 합니다.

# /etc/init.d/vsftpd restart