centos ] ftp 설정

웹이앱을만났을때 | 2021.07.26 23:33 | 조회 709

FTP 서버 구축 순서

1. vsftpd 패키지설치

2. 서버 설정 (conf 파일 및 허용리스트 작성)

3. 방화벽 설정 & selinux해제

4. 데몬재시작

5. 추가사항

6. 재시작 에러시 대처

 

 


 

1. vsftpd 패키지 설치

grep 명령어를 이용해서 vsftpd 가 설치 되어 있는지 확인 합니다. 

[root@localhost /]# ps -ax | grep vsftpd
 79682 pts/2    R+     0:00 grep --color=auto vsftpd

 

이후 yum 명령어를 이용해서 vsftpd 패키지를 설치 합니다. 

[root@localhost /]# yum -y install vsftpd

 


 

2. 서버설정

conf 파일을 이용해서, ftp 관련한 설정을 해줍니다. 해당 경로는 아래를 참고해주세요.

[root@localhost etc]# vi /etc/vsftpd/vsftpd.conf
[root@localhost etc]#

 

해당 conf 파일에서 저는 아래 3개의 설정을 변경했습니다. 

익명 허용 여부와, 허용 리스트를 관리해주는 부분입니다. 

anonymous_enable=YES

chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

 

ESC 키를 누르고 :set nu 를 입력하면, 아래와 같이 줄 수가 표시됩니다. 

 

 

 

허용리스트 파일을 아래와 같이 conf 파일에 설정 해 주었기 때문에, 해당 경로에 허용할 아이디 리스트를 입력하여 줍니다. 

 

chroot_listchroot_list_file=/etc/vsftpd/chroot_list

 

[root@localhost etc]# vi /etc/vsftpd/chroot_list
[root@localhost etc]#

 


 

3. 방화벽 설정

기본적으로 FTP는 21번 포트를 사용합니다. 리눅스의 경우 웬만한 방화벽은 막혀 있다고 보시면 됩니다. 

그래서 firewall-cmd 명령어를 이용해서 방화벽을 해제해 줍니다. 

저는 그냥 21번 기본 포트를 사용하였으며, 원하시는 포트로 변경해도 됩니다. 

[root@localhost etc]# firewall-cmd --permanent --add-service=ftp
success
[root@localhost etc]# firewall-cmd --permanent --add-port=21/tcp
success
[root@localhost etc]# firewall-cmd --reload
success
[root@localhost etc]#

 

 

SELINUX 해제

 

SELinux 는 Linux의 보안을 강화해 주는 보안 강화 커널이고 zero-day 공격 및 buffer overflow 등 어플리케이션 취약점으로 인한 해킹을 방지해 주는 핵심 구성요소입니다. 

SELinux 는 저도 공부가 더필요한 영역이라, 자세한 설정은 여기서 다루지 않겠습니다. 

일단 SELINUX를 해제하는 방식으로 보안의 영역을 최소화 하겠습니다. 

 

[root@localhost etc]# vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

SELINUX=enforcing 을 disabled로 변경하여 준다.

 


 

4. 데몬 재시작

[root@localhost etc]# systemctl enable vsftpd

[root@localhost etc]# systemctl restart vsftpd

 

 


5. 추가 사항

간혹 root 계정을 이용해서 FTP 에 접속하는 경우 503 에러를 발생하는 경우가 있는데요. 이는 root 계정이 접속 거부 리스트에 등록되어 있는 경우 입니다. 

 

root 거부리스트 계정 제거

아래 각각 명령어를 이용해서 보여지는 리스트에서 root 계정을 제거해 줍니다. 

[root@localhost ~]# vi /etc/vsftpd/ftpusers


[root@localhost ~]# vi /etc/vsftpd/user_list

# Users that are not allowed to login via ftp
root -> 제거
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody

 

 



출처: https://holjjack.tistory.com/111 [정리하며 배우다.]
facebook twitter
287개(1/15페이지)
강좌
번호 제목 글쓴이 조회 날짜
287 PTR 등록방법 카페24 웹이앱을만났을때 223 2022.05.10 11:41
286 [jquery] 소스상 class 명 변경하기 웹이앱을만났을때 485 2021.09.15 16:49
285 centos 회사] 로그 파일 쉽게 삭제하는 법 웹이앱을만났을때 801 2021.07.27 15:13
284 centos 회사] 리눅스 정기 쉘 /etc/cron.daily 웹이앱을만났을때 630 2021.07.27 15:09
283 centos] php 소스 그대로 보이는 경우 웹이앱을만났을때 693 2021.07.27 11:39
>> centos ] ftp 설정 웹이앱을만났을때 710 2021.07.26 23:33
281 엣지 브라우저 검색기록 지우기 웹이앱을만났을때 679 2021.07.26 15:23
280 centos] 특정사용자만 접근통제 웹이앱을만났을때 503 2021.07.24 09:30
279 centos] 시간 조정하기 웹이앱을만났을때 528 2021.07.23 09:39
278 ajax 이용한 데이타 저장하기 웹이앱을만났을때 425 2021.07.16 15:52
277 [centos] ssl 설치 도메인 구성하는 파일 웹이앱을만났을때 589 2021.07.15 15:09
276 mod_ssl 설치하기 웹이앱을만났을때 610 2021.07.15 14:03
275 [centos] 업데이트 및 설치 안되는거 해결 웹이앱을만났을때 843 2021.07.15 14:00
274 폴더권한 부여 및 사용자 추가 웹이앱을만났을때 405 2021.07.12 11:38
273 umber_format() expects parameter 1 to be 웹이앱을만났을때 519 2021.07.09 16:18
272 ERR_CLEARTEXT_NOT_PERMITTED 웹이앱을만났을때 479 2021.07.06 18:12
271 안드로이드] 웹뷰 어플 제작 쉽게 설명한 곳 웹이앱을만났을때 1183 2021.07.06 17:40
270 PHP] 오늘일 기준 한달 일주일 전 웹이앱을만났을때 489 2021.06.30 16:32
269 centos] 일정 시간에 명령어 실행 웹이앱을만났을때 673 2021.06.30 15:43
268 number_format 오류 해결법 웹이앱을만났을때 637 2021.06.28 16:27