VSFTPD를 이용한 FTP 설치 및 설정
VSFTPD를 이용한 FTP 설치 및 설정 (방법1, 추천)
1. vsftp, ftp 설치하기
- 'yum' 명령을 통해 손쉽게 설치 할 수 있다.
# yum -y install vsftpd ftp
2. 방화벽 설정
iptables에 20, 21번 포트를 등록해준다.
(FTP의 경우 20번 포트를 통해 자료를 전송하게되고, 21번 포트를 이용해 명령(삭제, 복사, 새로만들기 등)을 전송)
# vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
위 내용을 추가하고 저장한다.
3. 방화벽 정책 재시작
#service iptables restart
4. FTP 접속을 위한 계정 설정
- 어떤 계정을 통해 FTP 접속에 허용할 것인지를 설정
기본적으로 CentOS는 보안문제로 root 계정을 막아 두었습니다.
만약 root 계정으로 접속해야 한다면, 아래의 두 파일을 수정해야 합니다.
#vi /etc/vsftpd/user_list
내용을 보면 허용불가 계정들이 나열되어있습니다.
'root'로 접속하기 위해서는 root 내용을 삭제 후 저장합니다.
#vi /etc/vsftpd/ftpusers
마찬가지로 허용불가 계정이 나열되어있는데, 위 파일과 동일하게 'root'를 삭제 후 저장합니다.
5. FTP 접속시, 530이나 500 Error 해결
CentOS의 selinux때문에 발생할 수 있는 에러를 막기 위해 아래와 같은 설정을 해줍니다.
(selinux는 리눅스 시스템의 보안을 위해 설정)
#setsebool -P ftp_home_dir 1
6.부팅 시 vsftpd 자동시작 설정
부팅시 자동으로 데몬이 실행할 수 있도록 아래와 같이 설정해줍니다.
#chkconfig --level 2345 vsftpd on
7. 설정 후 vsftpd 재시작
#service vsftpd restart
8. 기타
root로 접속 시 아래와 같은 에러가 발생 할 수 있다.
500 OOPS: cannot change directory:/root
이때는 아래 명령을 입력 후 다시 접속 시도시 root 계정으로 접속이 가능하다.
#setenforce 0
====================================================================================================
VSFTPD를 이용한 FTP 설치 및 설정 (방법2)
1. VSFTPD가 설치되어 있는지 확인
#rpm -qa | grep vsftpd
2. 없다면 설치
#yum -y install vsftpd ftp
"Complete!"가 뜨면 완료
3. 설정파일 수정(pass해도 무방, 목적에 맞게 수정)
vi /etc/vsftpd/vsftpd.conf
에서 주석이 되어있는 아래를 주석제거
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list(경로가 없는 경우 파일 생성, touch chroot_list)
:wq로 저장후 종료
4. 설정확인
#netstat -ntlp 입력하여 화면에 vsftpd가 포트 몇번이 설정되었는지 확인
5. 텔넷접속
21번 포트가 설정되었을때
#telnet localhost 21