[ Server ][ Linux ] CentOS 7 vsftp 설치 및 설정 방화벽 설정 > linux

본문 바로가기
사이트 내 전체검색

linux

[ Server ][ Linux ] CentOS 7 vsftp 설치 및 설정 방화벽 설정

페이지 정보

작성자 웹지기 댓글 0건 조회 14,951회 작성일 18-12-11 15:27

본문

 vsftp 를 yum 을 이용해 설치 합니다.

    # yum -y update

    # yum install  -y vsftpd

systemctl 명령어로 vsftpd를 시작/중지/상태확인한다.

    # systemctl status vsftpd.service

    # systemctl start vsftpd.service

    # systemctl stop vsftpd.service

    # systemctl restart vsftpd.service

vsftpd 자동실행

    # systemctl enable vsftpd.service

firewall 을 사용중이면 아래와 같이 21포트를 열어준다.

    # firewall-cmd --permanent  --zone=public --add-port=21/tcp

    # firewall-cmd --reload

동시에 80,21,443포트를 열려면 

    #firewall-cmd --permanent  --zone=public --add-port={21,80,443}/tcp

    #firewall-cmd --reload

 

iptables 를 사용중이면 아래와 같이 21포트를 열어준다.

    # vi /etc/sysconfig/iptables

    -A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT

    # :wq


위의 작업이 선행되었다면 vsftpd 특정 사용자 상위디렉터리 이동 제한 및 conf 파일 설정 - 에디터에서 수정해도 상관없다. 

    # vi /etc/vsftpd/vsftpd.conf 

익명 접속을 허용하지 않으면 NO 라고 입력한다.

    anonymous_enable=NO  


로컬계정 사용자들의 접속을 허용하지 않으면 NO 라고 한다.

    local_enable=YES  


ftp 전송명령어 중 write를 허용하지 않으면 NO 라고 한다.

    write_enable=YES  


umask 의 기본 값은 077이다. umask값이 077이면 새로 생성되는 파일의 퍼미션은 600이 되고, 새로 생성되는 디렉터리의 퍼미션은 700이 된다. 당연히 보안강화가 된다.

    local_umask=022  


ftp 접속한 사용자가 특정 디렉터리로 이동할때 개별 디렉터리의 메시지를 보여주도록 설정 한것이다. 밑에서 message_file 이라는 부분을 검색해서 해당 메시지를 넣게 되면 개발 디렉터리 안내 파일로 사용할 파일명을 지정할 수 있다.

    dirmessage_enable=YES 


ftp 접속 후 파일 업로드 및 다운로드에 대한 로그를 남긴다는 의미이다.

    xferlog_enable=YES 


ftp는 기본적으로 21번 포트와 20번 포트를 사용한다. ftp접속과 명령어에 사용되는 포트는 21번 이며, 실제 데이터전송에 사용되는 기본포트는 20번이다. 이때 20번 포트의 데이터전송 연결을 허용 할 것인가 아닌가를 설정하는 것으로 YES는 허용한다는 의미이다.

    connect_from_port_20=YES 


로그파일에 남길 로그파일의 포맷을 기본포맷으로 남긴다는 뜻이다. 리눅스에서 ftp 기본로그파일로 /var/log/xferlog 을 사용한다. 이 지시자는 이 파일의 표준포맷으로 로그를 남기도록 설정하는 것이다. 이 파일의 포맷보다는 vsftpd 로그포맷을 사용하는 것이 보다 자세한 로그를 남길 수 있다. 즉, 디렉터리 생성로그나 또는 로그인 같은 상세로그까지 기록해 준다.

    xferlog_std_format=YES 


특정 사용자들에 대해 자신의 홈 디렉터리를 루트 디렉터리로 인식하도록 하는 기능이다.

    chroot_list_enable=YES

    chroot_local_user=YES

    chroot_list_file=/etc/vsftpd/chroot_list 


chroot_list 파일이 없다면 새로 만들어 주어야 한다.


chroot_local_user=YES는 특정 사용자가 아닌 전체 사용자를 대상으로 자기 자신 홈 디렉터리 상위 디렉터리로 이동하지 못하도록 하는 설정이다.

chroot_list_enable=YES 로 설정하고 chroot_list_file=/etc/vsftpd/chroot_list 파일에 등록된 사용자들에 한해서 chroot 기능이 적용되어 자기 자신의 홈디렉터리 상위디렉터리 이동이 제한된다.

이 파일에 등록할때는 한 행에 사용자 계정을 등록하면 된다. (chroot_local_user=YES 이 부분 주석처리 해야된다. )


만약 vsftpd를 xinetd모드가 아닌 standalone으로 서비스 하려면 위의 listen 을 YES 로 설정하고 listen_port에 서비스 할 포트를 지정하면 된다. (기본포트 21번)

chroot_local_user=YES 와 chroot_list_enable=YES 가 모두 YES 이면, /etc/vsftpd/chroot_list 파일에 등록된 사용자를 제외한 나머지 사용자들이 상위디렉터리 이동이 제한이 되는 것이다. 

    listen=YES 


PAM 설정파일명으로 사용할 파일명을 지정한다. 이 설정이 적용되면 기본이 vsfpd이므로 /etc/pam.d/vsftpd 파일이 사용된다.

    listen_ipv6=NO

 

    pam_service_name=vsftpd 


    userlist_enable=YES

    tcp_wrappers=YES


출처 : https://nanoomi.org/bbs/board.php?bo_table=Server&wr_id=29

[이 게시물은 웹지기님에 의해 2019-03-15 15:32:56 knowledge에서 이동 됨]
추천0 비추천0

댓글목록

등록된 댓글이 없습니다.

Total 103건 1 페이지
+4
  • 103 [ Server ][ Linux ] CentOS 7 ruby 설치
  • CentOS 7 에 ruby를 설치해봅시다. 일단 루비가 설치 되어있는지 검색해봅니다. 최소버젼을 이용하여 설치를 했었기 때문에 당연히 설치가 안되어있겠죠... 예상대로 설치가 되어 있지 않습니다. 그러면 루비를 설치해 보겠습니다. 중간에 이러한 질의가 뜨는군요. Is this ok [y/n]: y라고 치면 계속 진행이 됩니다. 다운로드가 계속 진행이 되고 완료가 됩니다. 설치가 완료가 되었는지 확인해보겠습니다. 설치도 완료가 되었고, 버젼도 ...
  • 웹지기 12-27 11829 0 0 댓글 0
  • 102 [ Server ][ Linux ] centos7 ssh 설정 변경 및 방화벽 등록/ 삭제
  • /etc/ssh/sshd_config 에서 원하는 포트번호를 입력 # vim /etc/ssh/sshd_config # Port 2200 ssh 다시시작 # systemctl restart sshd.service 방화벽에 sshd_config에 설정한 포트를 추가 # firewall-cmd --permanent --zone=public --add-port=2200/tcp # firewall-cmd --reload # ...
  • 웹지기 02-01 11629 0 0 댓글 0
+2
  • 99 [ Server ][ Linux ] openlitespeed 와 mysql mariaDB 설치 및 실행
  • openlitespeed 기능 - 고성능 이벤트 기반 아키텍처. - 초경량, 최소 cpu 및 메모리 리소스 - apache 호환 재 작성 규칙이 있슴. - 사용자에게 친숙한 webadmin GUI - 여러가지 모듈을 지원하여 기능을 향상 - 가상 호스트 페이지 캐싱을 지원 - 여러버젼의 php설치지원 1) centos7minimall 설치 2) openlitespeed 및 php7 설치를 위한 openlitespeed repository 설치 및 활성화 # rpm -ivh...
  • 웹지기 02-27 11511 0 0 댓글 0
  • 98 [ Server ][ Linux ] centos7 FFMpeg 설치방법
  • FFmpeg는 모든 종류의 온라인 스트리밍 서비스에서 널리 사용되는 오디오 및 비디오를 기록, 변환 및 스트리밍하는 인기있는 오픈 소스 솔루션 CentOS 7 서버에 FFmpeg를 설치하는 방법을 설명 1. 시스템 업데이트 sudo yum install epel-release -y 사용금지:sudo yum update -y sudo shutdown -r now 참조 : epel = Extra Packages for Enterprise Linux→ 엔터프라이즈 리눅스를 위한 추...
  • 웹지기 02-28 15758 0 0 댓글 0
  • 97 [ Server ][ Linux ] FFMpeg java로 연습하기
  • FFmpeg 는 다양한 디지털 음성 스트림과 영상 스트림을 녹화, 변환할 수 있는 유틸리티 프로그램이다. 원래 리눅스용으로 개발되었으나 현재는 윈도우에서도 많이 사용하고 있다. 명령어를 직접 날려서 (윈도우라면 cmd창) 동작하는 방식이며 여러가지 프리 소프트웨어와 오픈 소스 라이브러리로 구성되어 있다. 라이브러리 중에는 libavcodec 들어있는데, 이 라이브러리는 음성/영상 코덱 라이브러리로 여러 프로젝트에서 쓰이고 있다. 또, libavformat 이라는 음성/영상 다중화, 역다...
  • 웹지기 02-28 16176 0 0 댓글 0
  • 96 [ Server ][ Linux ] ispconfig3 설치 및 설정
  • 우선 CentOS7 minimal 설치후 Apache로 진행된 자료 입니다. 작업시 #은 복사하지말고 복사&붙혀넣기 신공으로 따라해 보세요.....^^ 코드 붙혀넣는 작업이 더 힘드네요...아고고~ # yum -y update # yum -y install vim wget @ hosts 편집 # vim /etc/hosts 자신의 서버IP (예 : 192.168.0.100) server1.mydomain.com serve...
  • 웹지기 03-04 20385 0 0 댓글 2
  • 95 [ Server ][ Linux ] centos7 java 설치 및 설정
  • @root계정으로 실행 @OS의 종류 확인 # getconf LONG_BIT @설치 -- 버젼에 맞는 파일확인(https://www.oracle.com/technetwork/java/javase/downloads/index.html) # mkdir /usr/local/java/ ==> 디렉토리 생성 @다운로드 # wget --no-check-certificate --header "Cookie: oracleli...
  • 웹지기 03-14 11154 0 0 댓글 0
  • 94 [ Server ][ Linux ] CentOS 7 명령어 정리
  • 설치 wget [URL] : URL에 있는 파일을 다운로드 받는다. rpm rpm -Uvh [rpm] : 패키지를 설치하거나, 업그레이드 한다. rpm -qi [rpm] : 패키지가 설치 되어있는지 확인한다. rpm -e [rpm] : 패키지를 삭제 한다. yum(의존성이 있는 패키지 그룹 단위) yum -y install [패키지] : 패키지를 설치한다. yum -y erase [패키지] ...
  • 웹지기 12-11 17621 0 0 댓글 0
  • 93 [ Server ][ Linux ] CentOS 7 데몬 종류
  • NetworkManager, NetworkManagerDispatcher 네트워크 인터페이스를 자동으로 관리하기 위한 데몬 acpid ACPI(Advanced Configuration and Power Interface) 방식의 시스템 전력 관리를 위한 데몬 anacron crond와 같은 작업 스케줄러 데몬이지만 crond와는 달리 시스템이 계속 켜져있지 않다고 가정하여 하루보다 작은 단위의 스케줄을 관리 apmd APM...
  • 웹지기 12-11 12621 0 0 댓글 0
  • 92 [ Server ][ Linux ] CentOS 7 mysql MariaDB 실행 / 설정 / 방화벽
  • MariaDB 실행하기 마리아db설치는 아래 링크를 따라하세요 https://funyphp.com/archive/knowledge/109 먼저 db가 실행중인지 확인하고 실행중이 아니라면 실행을 시켜줍니다. # systemctl status mysql # systemctl start mysql 서비스에 등록이 되어있지 않으면 서비스에 등록해 준다. # systemctl enable mariadb.service 방화벽 설정 ...
  • 웹지기 12-11 17756 0 0 댓글 0
  • 열람중 [ Server ][ Linux ] CentOS 7 vsftp 설치 및 설정 방화벽 설정
  • vsftp 를 yum 을 이용해 설치 합니다. # yum -y update # yum install -y vsftpd systemctl 명령어로 vsftpd를 시작/중지/상태확인한다. # systemctl status vsftpd.service # systemctl start vsftpd.service # systemctl stop vsftpd.service # systemctl restart vsftpd.servi...
  • 웹지기 12-11 14952 0 0 댓글 0
  • 90 [ Server ][ Linux ] CentOS 7 apm auto install 설치 이후 phpMyAdm…
  • 일반적으로 인터넷에 올라와있는 방법으로 했더니 오류가 발생한다. Error: Package: php-recode-5.4.45-16.el7.remi.x86_64 (remi) Requires: php-common(x86-64) = 5.4.45-16.el7.remi Installed: php-common-7.2.13-2.el7.remi.x86_64 (@remi-php72) php-common(x86-64) = 7.2.13-2.el7.remi...
  • 웹지기 12-11 9777 0 0 댓글 0
  • 89 [ Server ][ Linux ] CentOS 7 계정생성 / 계정삭제, 유저계정 권한변경, 계정기본파일 …
  • 계정 생성 : useradd 계정명 계정 생성 확인 : cat /etc/passwd | grep 계정명 계정 비밀번호 생성 : passwd 계정명 기본적으로 계정을 만들면 /home/계정명으로 생성된다. 계정생성시 자동으로 폴더와 파일을 추가하려면 /etc/skel/ 폴더에 public_html 을 만들어주고 에러확인을 위한 폴더( _log )도 추가해 주자. 만들어진 public_html 폴더에 시작파일인 index.html , index.php 파일등을 만들어서 셋팅이 잘되었는지...
  • 웹지기 12-12 13624 0 0 댓글 0
게시물 검색

회원로그인

접속자집계

오늘
6,810
어제
5,809
최대
33,828
전체
8,104,589

그누보드5
Copyright © funyphp.com. All rights reserved.