FTP (File Transfer Protocol) 서버 구현

파일을 전송하기 위한 서비스로 파일 전송 자체를 위해서는 웹보다 성능이 뛰어나다.

CentOS에서 기본으로 제공하는 vsftpd와 외부 제공인 pure-ftpd를 설치해본다.

 

vsftpd 설치

  1. dnf -y install vsftpd 명령으로 vsftpd 패키지를 설치한다.

  2. /var/ftp/pub/ 디렉터리에 샘플 파일을 넣는다. (pub 디렉터리가 없다면 생성하고 넣는다.)

  3. systemctl restart/enable vsftpd 명령어로 서비스를 재시작/상시가동 한다.

  4. systemctl stop firewalld 로 방화벽을 꺼둔다. (실제 사용시에는 해당 포트만 연다.)

  5. /etc/vsfptd/vsftpd.conf 파일에서 Anonymous_enable=YES 로 수정 후 저장한다.

  6. systemctl restart/enable vsftpd 로 서비스를 재시작/상시가동 한다.

vsfptd에서 특별한 인증 없이 외부에서 접속할 경우 기본적으로 anonymous다. 접근을 허용하는 경우이고 실제 사용 시에는 보안을 위해 허용하지 않기도 한다.

 

위 과정으로 서버에서 ftp 설치와 설정은 되었고 클라이언트 측에서 FileZilla를 이용해 FTP서버에 접속해 파일을 업/다운로드 해본다.

 

  1. Filezilla 설치파일을 받고 설치를 진행한다.

  2. 호스트에 서버IP 사용자명에 anonymous와 비밀번호를 입력하고 빠른연결을 한다.

  3. 서버에서 필요한 파일을 받을 수 있다. 업로드를 원하면 아래 과정을 진행한다.

  4. /etc/vsftpd/vsftpd.conf 파일을 아래와 같이 수정한다.

    1. 19행 write_enable=YES로 수정

    2. 29행 anon_upload_enable=YES 로 수정 (주석 처리 제거)

    3. 33행 anon_mkdir_write_enable=YES 로 수정(주석 처리 제거)

  5. chown ftp.ftp /var/ftp/pub/  명령어로 소유주를 변경한다.

  6. systemctl restart vsftpd 로 서비스를 재시작한다.

 

Pure-FTPd 설치

  1. wget또는 브라우저로 pre-ftpd 설치파일을 다운로드 하고 dnf -y install pure*.rpm 으로 패키지를 설치한다.

  2. /etc/pure-ftpd/pure-ftpd.conf 를 아래와 같이 수정한다.

    1. 77행 NoAnonymous no 로 수정

    2. 279행 AnonymousCantUpload no 로 수정

  3. systemctl restart/enable pure-ftpd 명령어로 서비스를 재시작/상시기동한다.

  4. /var/ftp/ 디렉터리로 이동해 upload, download 디렉터리를 생성한다.

  5. chown ftp.ftp upload download 로 소유권을 변경하고

  6. chmod 333 upload 로 upload 디렉터리는 쓰기만 가능하도록 변경한다.

  7. 클라이언트에서 Filezilla로 위 vsftpd와 동일하게 접속한다.

 

'Linux > Centos8' 카테고리의 다른 글

Samba 서버  (0) 2020.11.13
NFS서버  (0) 2020.11.13
웹 서버  (0) 2020.11.13
데이터베이스 서버  (0) 2020.11.13
메일 서버  (0) 2020.11.13

+ Recent posts