1. vsftpd 설치
yum -y install vsftpd
2. vsftpd 환경설정
vi /etc/vsftpd/vsftpd.conf 파일을 아래와 같이 수정해 줍니다.
3. 방화벽 설정 ( 체크 : iptables가 firewalld로 변경되었습니다)
firewall-cmd --permanent --add-port=21/tcp
firewall-cmd --permanent --add-service=ftp
firewall-cmd --reload
4. 계정추가
useradd 계정명
passwd 패스워드
5. vsftpd 실행상태 확인
systemctl status vsftpd.service <– vsftpd 상태확인
systemctl start vsftpd.service <– vsftpd 시작
systemctl stop vsftpd.service <– vsftpd 중지
systemctl restart vsftpd.service <– vsftpd 재시작
6. FTP Client 설치
yum install ftp
7. ftp 접속
** 에러처리
A. # systemctl restart vsftpd.service 명령어로 vsftpd서버를 시작할때 Job for vsftpd.service failed. See ‘systemctl status vsftpd.service’ and ‘journalctl -xn’ for details. 라는 메세지가 나온다면 vsftpd.conf설정파일에 문제가 있어서 발생하는 경우가 있다, 예를 들어 잘못된 키워드가 있다던가 특수 문자가 편집중에 입력이 되었을 경우.
B. vsftpd 서버에 접속하여 파일을 업로드하거나 다운로드할 때 550 Failed to open file. 라는 메세지가 나올 경우가 있다. 이는 SELinux의 보안 정책에 의해 업로드/다운로드 할 수 없을 경우이다. SELinux를 비활성화 하고 서버를 재부팅하면 파일 업로드/다운로드를 할 수 있다.
– SELinux 비활성화 방법
/etc/selinux/config 파일을 열어서 SELINUX=enforcing 를 SELINUX=disabled로 변경후 재부팅 하고 다시 활성화 하려면 SELINUX=enforcing으로 변경하고 리눅스 시스템을 재부팅 한다.
– SELinux 상태보기
sestatus
getsebool -a | grep ftp
C. 로컬에서 vsftpd서버에 접속해서 업로드/다운로드가 잘 되는데 원격에서는 접속조차 되지 않는 경우가 있다. 이는 firewalld 방화벽 때문일수도 있다. firewalld가 실행중인지 확인하고 실행중이라면 firewalld를 중지하고 원격에서 vsftpd서버에 접속해 본다.
— firewalld 실행 상태 확인
# systemctl status firewalld.service
— firewalld 중지
# systemctl stop firewalld.service
— firewalld 자동중지(시스템시작시 자동시작 안함)
# systemctl disable firewalld.service
지금까지 CentOS7에서의 ftp 설치 및 접속 방법이었습니다.
도움이 되셨길 바랍니다. ^^
'Dev. OS' 카테고리의 다른 글
리눅스 네트워크 설정 관련 주요 파일 (0) | 2015.02.08 |
---|---|
리눅스 네트워크 명령어 (0) | 2015.02.08 |
[리눅스] yum 응용편[1차 -cd 설치, 2차 - 인터넷 설치] (0) | 2015.02.05 |
리눅스/유닉스 디렉토리 이동 (0) | 2015.02.04 |
리눅스 파일 권한 변경하기(chmod) (0) | 2015.02.03 |