※ 요약
FTP를 이용하는 분들은 아시겠지만 ftp는 Active모드와 Passive모드가 존재한다. 일반적으로 사용할 때는 무엇이 더 좋다할 정도는 아니며 필자가 사용중인 CentOS7에는 기본적으로 액티브 모드가 기본 값이라 이번 포스트에서는 패시브 모드를 설정하는 방법을 알아보도록 하겠다.
※ Active 모드 방식 및 특징
- 모든 클라이언트에서 서버측 21번 포트로 접속을 시도하고 클라이언트가 사용할 두번째 포트를 서버에 통보
- 서버는 클라이언트에게 ack를 보내고 서버의 20번 포트는 클라이언트가 알려준 두번째 포트로 접속을 시도
- TCP/IP에서는 보통 클라이언트가 서버에 접속을 시도하는데 액티브모드에서는 서버가 클라이언트로 접속을 시도
- 만약 클라이언트 PC등에 방화벽이나 공유기가 있어 외부에서 접속을 허용하지 않는다면, 서버(20번포트) -> 클라이언트(1024~65535포트)의 접속이 정상적으로 되지 않아 FTP 로그인은 되지만 데이터 전송 및 디렉토리, 파일 리스트를 받지 못하는 문제가 발생
※ Passive 모드 방식 및 특징
- 모든 클라이언트에서 서버측 21번 포트로 접속(login)을 시도
- 서버는 클라이언트에게 서버에서 사용할 두번째 포트(1024~65535포트)를 통보
- 클라이언트는 다른 포트를 열어 서버가 알려준 이 포트로 접속을 시도하고 데이터를 전송
- 서버에서 클라이언트가 접속할 수 있도록 1024~65535 사이의 포트를 개방해야 하는 문제점이 발생할 수 있지만 접속 범위를 설정하므로써 문제 해결
※ 설정 방법
vi /etc/vsftpd/vsftpd.conf 라고 입력하여 vsftpd의 설정 파일을 열도록 한다.
설정 파일 제일 아래에 다음 항목을 추가 입력한뒤 저장하고 나오면 된다.
#pasv mode enable
pasv_enable=YES
#pasv port range
pasv_min_port=30000
pasv_max_port=30001
참고로 min 포트와 max 포트는 원하는 포트로 설정 가능하며 같은 값을 줄 경우 포트 고정이 가능하다. 설정을 저장하였으면 vsftpd 서비스를 재시작해주거나 재부팅해주면 설정이 적용되며, 시스템에 따라 방화벽 설정을 추가로 해줘야 하는 경우도 있다. 필자는 방화벽은 안해줘도 되서 여기까지만 작성하도록 하겠다.
'Linux > 유용한 정보' 카테고리의 다른 글
[리눅스] 500 OOPS vsftpd: refusing to run with writable root inside chroot() (0) | 2017.02.14 |
---|---|
[리눅스] ls 명령어 사용시 시간 출력 형식을 내 맘대로 (0) | 2017.02.04 |
[리눅스] CentOS 및 Ubuntu에서 sudo로 root 권한 얻는 방법 (1) | 2017.01.31 |
[리눅스] mysql 및 mariadb 접속 포트 변경하는 방법 (1) | 2017.01.30 |
[리눅스] 칼리 리눅스(Kali Linux) 특징 및 다운로드 방법 (0) | 2017.01.11 |
[리눅스] 터미널 색상 변경하기 (0) | 2016.09.03 |
[리눅스] Linux Mint(민트) 특징 및 다운로드 방법 (4) | 2016.05.27 |