[Docker] FTP 서버

docker ftp #

  • 공유할 폴더 생성

    1sudo mkdir /appdata/appuser/ftpdata
  • container 생성 및 백업

    1sudo docker run --net=host -d -v /appdata/appuser/ftpdata:/home/vstfpd -it --name data-ftp --restart=always docker.io/ubuntu:20.04
    2sudo docker commit -p data-ftp data-ftp-backup
    3sudo docker stop data-ftp
    4sudo docker remove data-ftp
    5sudo docker run --net=host -d -v /appdata/appuser/ftpdata:/home/vstfpd -it --name data-ftp --restart=always data-ftp-backup
  • docker 목록 조회

    1sudo docker ps -a

vsftpd 설치 #

  • container 접속

    1sudo docker exec -it data-ftp bash
  • vsftpd 설치

    1apt-get update
    2apt-get install -y vsftpd
    3apt-get install -y vim

vsftpd 설정 파일 수정 #

  • vi /etc/vsftpd.conf

    # 패시브 모드 활성화
    pasv_enable=YES
    
    # Data 포트 범위설정
    pasv_min_port=30001
    pasv_max_port=30001
    
    # 패시브모드로 연결될 ip(포트제외 서버ip만 적어주세요)
    pasv_address=serverIp
  • vsftpd 재시작

    1service vsftpd restart
  • vsftpd 확인

    1sudo netstat -natp | grep ftp
    2sudo vsftpd status
    3
    4sudo netstat -natp | grep LISTEN
    5
    6# vsftpd 멈춘다면
    7sudo vsftpd stop
  • user 추가

    1adduser testuser

FTP 접속 #

  • ftp 프로그램 또는 command로 접속

파일 업로드 또는 수정이 안된다면? #

  • 3가지 설정을 주석처리 해서 권한수정
    #chroot_local_user=YES
    #chroot_list_enable=YES
    #chroot_list_file=/etc/vsftpd.chroot_list
Advertisement