1. yum 설치 및 selinux 끄기.
1 2 3 4 5 6 |
~]# yum -y install epel-release ~]# yum -y install proftpd ~]# setsebool -P ftpd_use_passive_mode on ~]# setsebool -P ftp_home_dir on ~]# setenforce 0 |
2. /etc/pam.d/proftpd 설정
1 2 3 4 5 6 7 |
#%PAM-1.0 auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed auth include system-auth auth required pam_shells.so account include system-auth session include system-auth session required pam_loginuid.so |
3. TLS 통신 활성화를 위한 퍼블릭키 생성.
1 |
~]# openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/pki/tls/certs/proftpd.key -out /etc/pki/tls/certs/proftpd.crt |
4. /etc/proftpd.conf 설정.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# Includes DSO modules # Include /etc/proftpd/modules.conf UseIPv6 off IdentLookups off ServerName "ProFTP" ServerType standalone ServerIdent on "ProFTPD [x.x.x] Server" DeferWelcome off MultilineRFC2228 on DefaultServer on ShowSymlinks on TimeoutNoTransfer 600 TimeoutStalled 600 TimeoutIdle 1200 DisplayLogin welcome.msg DisplayChdir .message true DenyFilter \*.*/ DefaultRoot ~ !root RequireValidShell off AuthUserFile /etc/passwd AuthGroupFile /etc/group Port 21 PassivePorts 50001 50060 MaxClientsPerHost 5 MaxLoginAttempts 5 MaxClients 30 "Too many connections" MaxInstances 30 User root Group nobody Umask 022 AllowOverwrite on TransferLog /var/log/xferlog SystemLog /var/log/secure LogFormat default "%h %l %u %t \"%r\" %s %b" LogFormat auth "%h %l %u %t \"%r\" %s" VRootOptions allowSymlinks UseEncoding utf8 cp949 TimesGMT off SetEnv TZ "Asia/Seoul" <IfModule mod_tls.c> TLSEngine on TLSProtocol SSLv23 TLSOptions NoCertRequest AllowClientRenegotiations TLSRSACertificateFile /etc/pki/tls/certs/proftpd.crt TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.key TLSVerifyClient on TLSRequired off </IfModule> |
37번째줄 설정은 서버 인코딩셋에 따라 euckr cp949 으로 지정해야 할수 있다.
echo $LANG 로 서버 인코딩셋을 확인하거나 /etc/stsconfig/i18n 을 확인하거나 수정 후에 맞추어 준다.
설정은 system-auth 를 이용한 인증제 이며 FTP 및 FTP over TLS 을 지원, 최대 접속자수 30명, 한개의 IP에서 5개 동시접속 허용값이다.
umask 는 022 로 필요에 따라(아파치 보안정책) 027 등으로 교체해서 사용한다.
5. 데몬 시작 및 chkconfig 등록.
1 2 |
~]# /etc/init.d/proftpd start ~]# chkconfig --level 2345 proftpd on |