리눅스(linux) 서버에 FTP 접속하기.
요즘은 sftp 를 접속하지 ftp 접속은 잘 하지 않아요.
나만 그런가...ㅎㅎㅎ
여튼 그래도 혹시나 ftp로 접속을 해야 한다면...따라해보세요.
vsftpd 설치
#yum -y install vsftpd
우선 vsftpd 를 설치해주세요.
config 설정
#vim /etc/vsftpd/vsftpd.config
=> anonymous_enable=NO
vsftpd.config 파일을 여시면 위 문구를 찾아보세요.
처음 값은 아마도 YES 일 거예요. NO 로 바꿔주세요.
iptables 설정
#vim /etc/sysconfig/iptables
=> -A INPUT -m state --state NEW -m tcp -p tcp -s 123.456.789.1 --dport 21 -j ACCEPT
보통 ftp 포트는 막혀 있기 때문에 위 문장을 추가해주세요. ftp 가 필요한 IP 만 허용해주기로 하자.
iptables-config 설정
#vim /etc/sysconfig/iptables-config
=> IPTABLES_MODULES="ip_conntrack_ftp"
원래 IPTABLES_MODULES 에는 빈 값이 들어있을 거예요. 위 값을 넣어주세요.
서비스 재 시작
#service iptables restart
#service vsftpd start
FTP 접속 시도 전에 계정 생성
#adduser guest
#passwd guest
FTP 는 Default 설정으로 root 접속을 막고 있습니다.
그렇기 때문에 root 접속을 풀기 보다는 새로운 계정을 하나 생성하는 것을 추천합니다.
guest 계정으로 FTP 접속 시도
성공했다면 괜찮지만...SELINUX 를 사용하고 있다면 실패 확률 100% 입니다.
SELINUX 설정
500 OOPS: cannot change directory:/home/guest
요딴 에러가 난다면?
아래 명령어를 수행해보세요.
#getsebool -a | grep ftp
리스트 중에 ftp_home_dir --> off 라고 보이시죠?
아래 명령어를 수행하세요.
#setsebool -P ftp_home_dir 1
위 명령어를 이용해서 on 으로 바꿔주세요.
다시 FTP 접속 시도
접속은 되실 거예요.
하지만 폴더 및 파일이 보이지 않으실 거예요.
이것도 SELINUX 때문입니다.
아래 명령어를 수행해 주세요.
#setsebool -P allow_ftpd_full_access 1
그리고 확실하게 하기 위해서 vsftpd 다시 시작
#service vsftpd restart
여기까지 했으면 보통 됩니다.
진짜 혹시나 설마..."227 Entering Passive Mode" 라는 에러가 난다?
그러면 "pasv_enable=NO" 이 문장을 vsftpd.conf 맨 아래 부분에 추가해주세요.
#vim /etc/vsftpd/vsftpd.conf
맨아래로 이동해서
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
=> pasv_enable=NO -> 추가
그리고 다시 vsftpd 시작
#service vsftpd restart
이제 진짜!!! 접속이 될 거예요.
FTP 접속 GO GO
'『IT/개발』 > Linux' 카테고리의 다른 글
리눅스(Linux) remi 저장소 추가(설치) 하기 (0) | 2014.11.14 |
---|---|
리눅스(Linux) html2text 설치 및 사용 방법 (0) | 2014.11.10 |
리눅스(Linux) epel 설치 확인 및 설치 방법 (0) | 2014.11.10 |
OPENSSL에서 발견된 하트블리드(HEARTBLEED) 뭘까?? (0) | 2014.04.17 |
[Linux] Crontab 사용법 (0) | 2014.04.11 |