본문으로 바로가기

2. [CentOS7] 리눅스 FTP(vsftpd) 설치 및 설정

category 5.Linux 2018. 1. 22. 22:35
반응형

[CentOS7] 리눅스 FTP(vsftpd) 설치 및 설정



안녕하세요. 갓대희 입니다. 이번 포스팅은 [ 리눅스 FTP 설치 / 설정 ] 입니다. :) 



▶ FTP (File Transfer Protocol)

 - FTP는 약자그대로 파일을 전송하기 위한 규약.

 - 파일을 전송하는데 있어서 용량제한이 없으며 구축해두면 어디서나 접속하여 파일을 업 & 다운로드 할 수 있다.

 - 회사 업무를 하다보면 NAS라고 많이 듣게 되는데 FTP를 업그레이드 시킨것이라고 생각하면 될 것 같다.

    NAS는 가격이 비싸기때문에 개인 데스크탑, 노트북 등을 NAS로 구축하기도 한다고 한다. (NAS기능중 FTP포함)


▶ FTP 서버 구축 순서

1. 패키지설치

2. 서버 설정

3. 방화벽 설정 & selinux해제

4. 데몬재시작

5. 접속확인


▶ 설치할 패키지 : vsftpd (very secure ftpd) : 속도및 안정성이 전보다 뛰어 나다고 한다.


▶ 1. 패키지설치

 - 설치가 되어 있나 확인 해본다.



# ps -ax | grep vsftpd

# yum list installed | grep vsftpd  




저와 같은 경우 Cafe24 호스팅을 통해 기본 설치를 선택하여 이미 설치 되어 있다. 


설치가 안되신 분들은 Yum으로 설치를 진행 하시면 됩니다.



yum -y install vsftpd




▶ 2. 서버 설정   (vsftpd.conf 파일 수정, chroot_list 파일 신규 생성)


 - 2.1 vsftpd.conf 파일 수정



# vi /etc/vsftpd/vsftpd.conf



일단 보기 편하게 :set nu로 줄표시 한다.

 



12번 라인 : anonymous 접속 허용 여부를 no로 한다.




94번 라인 : [chroot_list_file(접속 허용 계정 리스트) 활용 여부] YES

96번 라인 : chroot_list_file 경로

114번 라인 : 주석 해제, NO로 변경


설정 끝.




다음 내용은 참고



 anonymous_enable=NO      

 idle_session_timeout=600

 chroot_local_user=NO 

 allow_writeable_chroot=YES

 chroot_list_enable=YES

 listen=YES

 use_localtime=YES

 anon_max_rate=100000

 local_max_rate=500000

 force_dot_files=YES

 max_clients=10

 max_per_ip=2



 - [anonymous 접속 허용 여부]
 - [접속 세션 유지 시간(초)]
 - [최상단 디렉토리를 접속한 유저 홈디렉토리로 제한] 
 - [chroot_local_user 제한 설정할 경우 설정값]
 - [chroot_list_file(접속 허용 계정 리스트) 활용 여부]

 - [standalone 설정 여부]

 - [서버시간으로 사용]

 - [annymous 전송속도 제한 bps]

 - [유저 전송속도 제한 bps]

 - [. 파일 표시 여부]

 - [최대 접속 허용수]

 - [한 아이피당 접속 허용수]




 - 2.2 vi /etc/vsftpd/chroot_list로 chroot_list 파일 생성


# vi /etc/vsftpd/chroot_list

허용할 계정 추가




3. 방화벽 설정 & selinux해제


# firewall-cmd --permanent --add-service=ftp

# firewall-cmd --permanent --add-port=21/tcp

# firewall-cmd --reload


vi /etc/selinux/config



SELINUX=enforcing 을 disabled로 변경하여 준다.



4. 데몬재시작


# systemctl enable vsftpd

# systemctl restart vsftpd

ps -ax | grep vsftpd



위와 같이 올바르게 서비스가 떠있는 것을 확인 할 수 있다.



5. 접속확인


혹시 530 Permission denied 오류가 난다면 

접속한 FTP 계정이 접속 거부리스트에 있는 계정인 경우 이다.


예를들어 root도 접속 거부리스트이다.

꼭 root계정을 접속 혀용하려면 다음과 같은 작업을 하여 주면 된다.



다음의 두개의 파일에서 root를 제거하여 준다.


vi /etc/vsftpd/ftpusers



vi /etc/vsftpd/user_list



끝.

반응형

댓글을 달아 주세요

  1. 1234 2019.08.22 14:46

    굿굿 입니다

  2. bs 2019.09.17 16:47

    감사합니다.

  3. yoon 2020.11.30 14:28

    감사합니다!