앞에서 내부네트워크에서 사용할 samba를 설정하는 방법을 알아보았다.
하지만 내부네트워크에서만 사용하려면 굳이 NAS를 구축할 이유가 없을 것이다.
이번에는 FTP server를 구축해 외부 내부에서 FTP를 이용해 접속할 수 있도록 설정해보자.
Ubuntu-server설치하면 vsftpd를 선택하여 설치할 수 있지만, 만약 vsftpd를 선택하지 않았다면
sudo apt-get install vsftpd
명령어를 이용해 vsftpd를 설치하도록 하자.
그 후
sudo vim /etc/vsftpd.conf
명령을 이용해 vsftpd 설정을 수정한다.
listen_port=21 port_enable=YES listen_ipv6=NO anonymous_enable=NO local_enable=YES write_enable=YES local_umask=002 dirmessage_enable=YES use_localtime=YES ftpd_banner="FTP's banner" connect_from_port_20=YES ftp_data_port=20 pasv_enable=YES pasv_min_port=31 pasv_max_port=40 pasv_address=chanha.me pasv_addr_resolve=YES chroot_local_user=YES allow_writeable_chroot=YES local_root=/Directory
- listen_port – 포트 변경 (기본 21, 보안상 임의의 포트로 변경하는것을 추천)
- port_enable – 포트 변경을 활성화
- listen_ipv6 – ipv6 사용여부를 설정(ipv6를 사용하지 않는다면 NO로 설정하는 것을 추천)
- anonymous_enable – 익명 로그인을 허용여부를 설정
- local_enable – 로컬사용자의 접속 허용여부를 설정
- write_enable – 로컬사용자가 저장, 삭제, 생성 등의 명령을 실행하게 할 것인지 설정
- local_umask – 생성된 파일의 permission을 설정하기위한 umask 설정 (002설정시 775권한으로 설정)
- dirmessage_enable – 디렉토리 이동시 각디렉토리 메시지가 보여지게 허용여부 설정
- use_localtime – 로컬시간을 사용할지 설정
- ftpd_banner – ftp클라이언트에서 표시될 banner를 설정
- connect_from_port_20 – 데이터포트를 통한 연결을 허용여부 설정
- ftp_data_port – 데이터포트 변경 (기본 20, 보안상 임의의 포트로 변경하는것을 추천)
- pasv_enable – 패시브모드 사용여부 설정 (외부접속시 패시브모드를 사용하는 것을 추천)
- pasv_min_port – 패시브모드 포트의 최소값을 설정
- pasv_max_port – 패시브모드 포트의 최대값을 설정 (min_port~max_port의 포트가 모두 사용)
- pasv_address – 패시브모드를 강제적으로 연결할 주소 설정 (DDNS로 연결한 주소를 입력)
- pasv_addr_resolve – pasv_address를 공인IP가 아닌 도메인으로 설정가능하게 할지 설정
- chroot_local_user – local_root의 상위 디렉토리의 접근을 허용하게 할지 설정 (YES로 설정하면 상위 디렉토리 접근이 불가)
- allow_writeable_chroot – local_root의 상위 디렉토리의 접근을 허용하게 할지 설정
- local_root – 공유할 디렉토리를 설정
다른 vsftpd 옵션을 확인하려면 여기를 참고
HDD에 존재하는 디렉토리중 일부분만 ftp서버에 올리는 것을 원한다면 특정디렉토리를 생성후
sudo mount –bind <원본디렉토리> <특정디렉토리>
명령으로 특정디렉토리에 다른 곳에 마운트된 디렉토리를 마운트시키는 것이 가능하다.
이를 이용하면 부분적인 디렉토리만 공유하는 것이 가능하다.
유저별 권한을 통해서 RO RW권한등을 부여할 수 있습니다.
유저 추가를 위해서
sudo adduesr <유저명>유저 삭제를 위해
sudo userdel -r <유저명>명령어를 이용하면 됩니다.
모든 설정을 마쳤다면
sudo /etc/init.d/vsftpd restart
명령을 통해 vsftpd서비스를 재시작한다.
그 후 FTP클라이언트를 이용하거나 윈도우 탐색기에서 ftp://도메인주소(IP주소):포트번호를 입력하면 FTP에 접속할 수 있는 것을 확인할 수 있다.
외부접속이나 도메인을 이용한 접속은 포트포워딩 설정을 해주지않아 불가능할 수 있다.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.