검색을 해보면 복잡하게 설명된 블로그가 많다.
CentOS 공식 위키에서 제공하는 스크립트를 사용하면 아주 편리하게 설정이 가능하다.
https://wiki.centos.org/HowTos/Chroot_Vsftpd_with_non-system_users
위의 문서에 패키지 설치는 오타가 있다.
yum -y install vsftpd db4-utils
config 실행
vsftpd_virtual_config.sh
방화벽 설정
패시브 모드를 기본으로 설정하게 되어 있으로 해당 포트를 열어준다.
64000:65535
사용자 추가
vsftpd_virtualuser_add.sh
추가한 사용자로 접속을 해본다.
여기까지는 잘되는데 문제는 로컬 사용자를 같이 사용하고 싶은 경우이다.
config스크립트를 살펴보면 /etc/vsftpd/denied_users 파일에 접근제한용 운영계정과
로컬 사용자 계정 정보가 모두 들어간다.
사용할 사용자 계정이 localuser 라면
vim /etc/vsftpd/denied_users
localuser 삭제
/etc/vsftpd/users 에서
cp my_ftp_virtual_user localuser
vim localuser
local_root=/home/localuser
기본 vsftpd 인증은 /etc/pam.d/vsftpd 파일이고
config를 실행하면서 생긴 파일은 /etc/pam.d/ftp파일이다.
ftp 파일을 수정하자.
기존
auth required pam_userdb.so db=/etc/vsftpd/accounts
account required pam_userdb.so db=/etc/vsftpd/accounts
수정
#%PAM-1.0
# virtual users
auth sufficient pam_userdb.so db=/etc/vsftpd/accounts
account sufficient pam_userdb.so db=/etc/vsftpd/accounts
#Local users
auth include vsftpd
account include vsftpd
이제 로컬 유저와 가상 유저 모두 사용가능하다.
'지식창고 > 리눅스' 카테고리의 다른 글
windows10의 리눅스 환경 설정 하기 (0) | 2016.08.05 |
---|---|
vsftpd 여러개의 설정으로 운영 (0) | 2015.09.30 |
gitlab을 docker로 운영하기 (0) | 2015.09.21 |
우분투에 아파치 설정 하기 (2) | 2015.06.02 |
docker에 대한 오해와 이해 (0) | 2014.07.28 |