0. 서론
필자는 윈도우 게이밍 노트북과 맥북을 사용하고 있다. 게이밍 노트북은 성능이 나름 좋은편이지만 너무 무거워서 들고 다니기가 힘들다. 그래서, 외부에서 코딩을 할 때는 주로 집에 두고 DB나 FTP 서버용으로 사용하고 있다.
FTP 서버는 FileZilla Server를 사용하고 있는데, 윈도우랑 맥에서 똑같은 소스를 테스트할 목적으로 서버를 설치하였다. 그러나, 지금은 왼도우 노트북에서 영화를 다운받아두고 외부에서 볼 때 유용하게 사용하고 있다. 그러다 문뜩 윈도우를 재부팅하는데 FileZillar서버가 자동으로 실행되는 모습을 보면서 굳이 FileZilla를 사용해야할까?라는 의문이 생겼다.
그래서 FTP 서버를 직접 만들어 보기로 하였다.
1. 설치 및 실행
1-1. 라이브러리 설치
# 작성일 기준: pyftpdlib==1.5.5
$ python install pyftpdlib
1-2. 실행
# 실행 경로를 공유 폴더로 설정.
$ python -m pyftpdlib -i localhost -p 9021 -d .
# 실행 옵션
1) -i ADDRESS, --interface=ADDRESS
: FTP 서버 주소 설정 (default: 0.0.0.0)
2) -p PORT, --port=PORT
: FTP 서버의 포트 설정. (default: 2121)
3) -w --write
: Write 권한을 '유저'에게 부여. (default: read-only)
4) -d FOLDER, --directory=FOLDER
: 공유 디렉토리 설정. (default: 실행 경로)
5) -n ADDRESS, --nat-address=ADDRESS
: NAT 주소 설정
6) -r FROM-TO, --range=FROM-TO
: TCP 포트 범위 설정. (예: -r 60000-65535)
7) -D, --debug
: 디버그 모드로 실행
8) -V, --verbose
: 좀 더 상세한 로그 출력
9) -u USERNAME, --username=USERNAME
: 접속 권한을 부여할 유저명
10) -P PASSWORD, --password=PASSWORD
: 유저의 패스워드.
# 실행 옵션은 [ python -m pyftpdlib --help ]를 통해 확인할 수 있음.
1-3. 실행 결과
- 웹브라우저에서 [ ftp://127.0.0.1:9021 ] 또는 [ ftp://localhost:9021 ] 로 접속.
- FileZilla와 같은 FTP Client를 통해서도 접속 가능.
- 공유 폴더의 파일들을 확인할 수 있으며, 파일을 클릭하면 다운로드 받을 수 있음.
마치며
- 이번 포스트에서는 간단하게 pyftpdlib 라이브러리를 설치하여 커맨드로 간단하게 실행해보았다.
- 커맨드로 실행하면 빠르고 간편하게 실행할 수 있지만 여러 유저를 등록하여 사용하거나 서버의 세부 옵션들을 설정할 수 없다.
- 그래서 다음 포스트에서는 FTP서버를 설정하여 실행하는 방법에 대해서 알아보도록 하겠다.
'Back-end > Python' 카테고리의 다른 글
[Pyftpdlib] FTP 서버 만들기 (3) - 사용자 패스워드 암호화 (0) | 2020.02.18 |
---|---|
[Pyftpdlib] FTP 서버 만들기 (2) - 사용자 인증 설정 (0) | 2020.02.12 |
[크롤링] Selenium으로 특가 상품 수집 (5) - Telegram Bot (0) | 2020.02.03 |
[크롤링] Selenium으로 특가 상품 수집 (4) - 모듈화 (0) | 2020.02.02 |
[크롤링] Selenium으로 특가 상품 수집 (3) - 데이터 분석 및 수집 (2) | 2020.01.31 |
댓글