개발자의 끄적끄적

[linux] centos 7 FTP(vsftpd) 설치 및 설정 [펌] 본문

개발/linux

[linux] centos 7 FTP(vsftpd) 설치 및 설정 [펌]

효벨 2020. 2. 25. 01:00
728x90
반응형

[linux] centos 7  FTP(vsftpd) 설치 및 설정 [펌]

 

▶ 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

 



출처: https://goddaehee.tistory.com/73 [갓대희의 작은공간]

반응형
Comments