CentOS 7 vsftpd install ( yum )

O/S : CentOS 7.x

ftp 프로그램은 여러가지 존재한다 vsftpd / proftpd / pure-ftpd  이중에서 가장 편하게 설치할 수 있는 vsftpd를 설치해 보자

1. 프로그램 설치

[[email protected] ~]# yum -y install vsftpd

2. vsftpd.conf 수정

 

[[email protected] ~]# vi /etc/vsftpd/vsftpd.conf

############################## 기본 설정 ##############################
## VsFTP 데몬을 background로 실행할 것인지 설정 합니다. (기본값 = NO)
## => VsFTP 데몬은 기본적으로 inetd 모드로 동작이 됩니다. 따라서 독립모드(standalone)로
## 데몬을 운영하실 거라면 이 옵션과 listen 옵션을 모두 YES로 켜주셔야 됩니다.
## 반대로 VsFTP 데몬을 inetd 모드로 운영하시려면 이 옵션과 listen 옵션을 비활성화 하시면 됩니다.
## 일반적으로 FTP 데몬은 많은 접속이 있을 경우에 standalone 모드로 운영하는것이 좋으며,
## 많은 접속이 없는 경우에는 inetd 모드로 운영하는것이 시스템 자원효율에 좋습니다.
background=YES
#
## background 옵션과 같이 사용되며, 이 옵션은 listen_port에서 들어오는 요청에 대해서
## 데몬이 요청을 받아드릴지에 대해 설정합니다. (기본값 = NO)
## => 만약 데몬을 독립모드(standalone)로 운영하실 거라면 background 옵션과 같이 이 옵션도
## 함께 활성화 시켜야 됩니다.
listen=YES
#
## listen 옵션과 동일하지만, IPv6에서 운영할 때 사용 합니다. (기본값 = NO)
## => 일반적으로 IPv6는 사용하지 않으므로 비활성화 하시면 됩니다.
listen_ipv6=NO
#
## VsFTPd가 구동될 서버의 유저를 설정합니다. (기본값 = nobody)
#nopriv_user=ftpsecure
#
## FTP 서버에 접속할 수 있는 클라이언트의 최대수를 제한하는 옵션 입니다. (기본값 = 0)
## => 기본값인 0으로 설정하면 제한을 두지 않습니다.
max_clients=100
#
## IP당 접속할 수 있는 최대수를 제한하는 옵션 입니다. (기본값 = 0)
## => 기본값인 0으로 설정하면 제한을 두지 않습니다.
max_per_ip=30
#
## 계정 사용자의 최대전송률을 지정합니다. (기본값 = 0)
## => 업/다운로드의 속도를 제한할때 사용하며, 단위는 bps 입니다.
local_max_rate=0
## 서버의 FTP 데몬시간을 서버의 표준시간으로 고정할지 설정합니다. (기본값 = NO)
## => 만약 이 옵션을 비활성화 하게되면 표준시각(GMT)를 보여주므로, 한국의 경우 9시간의 오차가 발생합니다.
use_localtime=YES
#
#
############################## 접속 설정 ##############################
## 익명 사용자의 접속에 대한 설정을 합니다. (기본값 = YES)
anonymous_enable=NO
#
## 계정 사용자의 접속에 대한 설정을 합니다. (기본값 = NO)
local_enable=YES
#
## 사용자에게 STOR(저장),DELE(삭제),RNFR(이름변경),RNTO(이름변경),MKD(디렉토리생성),RMD(디렉토리삭제),
## APE(이어올리기), SITE(umask,chmod)등의 권한을 허용할지 설정합니다. (기본값 = NO)
## => 이 옵션이 비활성화되어 있으면 사용자는 FTP 서버에 데이터를 쓸 수 없습니다.
write_enable=YES
#
## 파일 생성 umask 값을 지정합니다. (기본값 = 077)
## => umask는 "max permission-umask=create permission" 의 공식을 가지고 있습니다.
## 디렉토리의 기본값은 0777이며, 파일의 기본값은 0666 입니다.
## 따라서 일반적인 시스템의 파일생성 퍼미션인 644를 생성하려면 022로 해야 됩니다.
## 디렉토리: 0777-022=0755, 파일: 0666-022=0644
local_umask=022
#
#
## 명시된 사용자만 로그인을 허용할 때 사용하는 옵션입니다. (기본값 = NO)
### => userlist_deny 옵션이 비활성화 된 상태에서만 작동합니다.
userlist_enable=NO
#
## 명시된 사용자가 로그인을 할 수 없도록 제한하는 옵션 입니다. (기본값 = YES)
### => userlist_enable 옵션이 비활성화 된 상태에서만 작동하며, 서로 반대되는 개념 입니다.
userlist_deny=YES
#
## 명시된 사용자를 읽어올 파일을 지정합니다. (기본값 = /etc/vsftpd.user_list)
#userlist_file=/etc/vsftpd.user_list
#
#
############################## 로그 설정 ##############################
## 파일의 송/수신 결과를 xferlog_file 옵션으로 지정된 로그파일에 기록합니다. (기본값 = NO)
xferlog_enable=YES
#
## 액티브모드(Active Mode) 데이터 전송 포트인 20번을 사용할 것인지 설정 합니다. (기본값 = NO)
connect_from_port_20=YES
#
## xferlog_enable 옵션을 활성화했을 경우에 로그를 기록할 파일을 지정합니다.
## (기본값 = /var/log/vsftpd.log)
xferlog_file=/var/log/vsftpd.log
#
## 로그를 기록할 때 표준 xferlog 포맷으로 저장할 것인지를 설정합니다. (기본값 = NO)
xferlog_std_format=NO
#
#
############################ 대기시간 설정 ############################
##
## 액티브 모드(Active Mode)를 사용하는 클라이언트의 접속 허용시간을 설정합니다. (기본값 = 60/초)
## => 클라이언트의 요청패킷(SYN Packet)을 받은뒤, 지정된 시간내에 접속이 안될경우 종료합니다.
connect_timeout=60
#
## 패시브 모드(Passive Mode)를 사용하는 클라이언트의 접속 허용시간을 설정합니다. (기본값 = 60/초)
## => 클라이언트의 요청패킷(SYN Packet)을 받은뒤, 지정된 시간내에 접속이 안될경우 종료합니다.
accept_timeout=60
#
## 접속 대기시간을 설정합니다. (기본값 = 300/Secs)
## => FTP에 접속한 뒤 아무런 작동도 안할 때 지정된 시간이후 접속이 종료되도록 합니다.
idle_session_timeout=300
#
## 데이터 전송 대기시간을 설정합니다. (기본값 = 300/Secs)
### => FTP 서버로부터 데이터를 업/다운로드를 한 뒤 아무런 작동도 안할때 접속이 종료되도록 합니다.
data_connection_timeout=300
#
#
############################# 메시지 설정 #############################
## 사용자가 FTP 서버에 접속했을 때 보여줄 환영 메시지 파일을 설정합니다. (기본값 = none)
##banner_file=/etc/vsftpd/welcome.msg
#
## 사용자가 FTP 서버에 접속했을 때 보여줄 환영 메시지를 설정합니다. (기본값 = none)
ftpd_banner=Welcome to vsftpd server
#
## 디렉토리의 메시지 파일을 사용자에게 보여줄 것인지 설정합니다. (기본값 = NO)
dirmessage_enable=NO
#
## 메시지 파일을 지정 합니다. (기본값 = .message)
### => dirmessage_enable 옵션을 허용했을 경우에 메시지를 읽어올 파일을 지정합니다.
#message_file=.message
#
## async ABOR 명령어를 사용할 수 있도록 설정합니다. (기본값 = NO)
## => 일부 FTP 클라이언트에서 파일전송을 취소했을 경우, 취소되지 않은 상태로 있는 경우가
## 생길 수 있는데 그것을 방지하기 위해 사용할 수 있습니다.
## 그러나 보안상 좋지 않기 때문에, 비활성화 하시는것이 좋습니다.
async_abor_enable=NO
#
## 아스키모드(ASCII Mode) 전송 허용에 대해서 설정합니다. (기본값 = NO)
### => 이 옵션은 악의적인 사용자에 의해서 시스템의 자원이 고갈될 수 있으므로 주의해야 됩니다.
ascii_download_enable=YES
ascii_upload_enable=YES
#
## 로그인 거부 리스트 사용에 대한 설정을 합니다. (기본값 = NO)
#deny_email_enable=YES
## 로그인 거부 파일을 지정합니다. (기본값 = /etc/vsftpd.banned_emails)
#banned_email_file=/etc/vsftpd/banned_emails
#
#
############################## 보안 설정 ##############################
#
## 모든 계정 사용자가 자신의 홈상위 디렉토리를 접근할 수 없도록 설정합니다. (기본값 = NO)
## => FTP 사용자가 시스템에 접근할 수 있으면 위험하므로 반드시 활성화 하는것이 좋습니다.
chroot_local_user=YES
#
## 명시된 사용자가 자신의 홈상위 디렉토리를 접근할 수 없도록 설정합니다. (기본값 = NO)
## => 이 옵션은 chroot_local_user 옵션이 비활성화되어 있어야 사용할 수 있습니다.
## => 전체 적용이 아니라 일부 사용자만 제한할때 편하지만, 개별 적용은 보안상 좋지 않습니다.
#chroot_list_enable=YES
#
## 사용자의 홈상위 디렉토리를 설정한 파일을 지정합니다. (기본값 = /etc/vsftpd.chroot_list)
## => chroot_list_enable 옵션을 활성화했을 경우에 리스트를 읽어올 파일을 지정합니다.
#chroot_list_file=/etc/vsftpd/chroot_list
#
## ls -R 명령을 허용할 것인지를 설정하는 옵션 입니다. (기본값 = NO)
## => 만약 하위디렉토리나 파일이 매우 많은 상위디렉토리에서 이 옵션을 활성화하게 되면
## 시스템 자원의 낭비가 심하므로, 비활성화 하시는것이 좋습니다.
ls_recurse_enable=NO
#
## PAM 사용자 인증을 할 때 사용될 인증파일을 지정합니다. (기본값 = ftp)
## => VsFTPd를 RPM으로 설치하게 되면 일반적으로 vsftpd로 인증파일이 생성됩니다.
pam_service_name=vsftpd
## TCP wrappers에 의해서 FTP 접속을 제어 할 것인지 설정합니다. (기본값 = NO)
### => 이 옵션을 활성화하면 /etc/hosts.allow와 /etc/hosts.deny에 의해서 제어할 수 있습니다.
### 그러나 이 옵션을 사용하려면 vsftpd 소스중 builddefs.h 파일에서 설정을 변경해야 됩니다.
### 변경전 -> #undef VSF_BUILD_TCPWRAPPERS
### 변경후 -> #define VSF_BUILD_TCPWRAPPERS
### 참고: LTN에서 제공하는 vsftpd는 이미 패치되어 있습니다
tcp_wrappers=YES
#
#
###### pass mode ############################################################################
pasv_enable=YES
pasv_min_port=50001
pasv_max_port=50005
allow_writeable_chroot=YES

 vsftpd.conf 파일 다운로드 —>       vsftpd     파일명 변경해서 사용

3. 부팅시에 해당 데몬이 올라올수 있도록 시스템에 등록

[[email protected] ]# systemctl daemon-reload
[[email protected] ~]# systemctl enable vsftpd.service

4. 서비스 시작

[[email protected] noarch]# systemctl start vsftpd

[[email protected] ~]# ps -ef | grep vsftpd
root 27556 1 0 11:08 ? 00:00:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
root 28282 20501 0 11:20 pts/0 00:00:00 grep --color=auto vsftpd

코멘트 쓰기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.

다음의 HTML 태그와 속성을 사용할 수 있습니다:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>



배송정보
배송조회를 하시려면 송장번호를 클릭하세요
배송조회
상품명
주문번호
택배사
송장번호