chroot 란?
ftp 사용자가 계정으로 접속을 했을때 해당계정의 홈디렉토리의 상단으로 접근이 되지 않게 하는 기능.
vsftp chroot 설정
- 모든 사용자에 대해 chroot 설정
vsftpd.conf설정에 chroot_local_user=YES의 주석을 해제. - 특정 사용자에 대해 chroot 설정
역시 vsftpd.conf설정에 chroot_local_user=YES, chroot_list_file=/etc/vsftpd/chroot_list 주석 해제 후 /etc/vsftpd/chroot_list 파일에 사용자를 등록하면 등록된 사용자에게만 적용됨.
CentOS 7의 경우 위와 같이 **chroot 설정을 하고 접속 하게되면 다음과 같은 오류메시지 발생하는 경우가 있다.**
오류 메시지 : refusing to run with writable root inside chroot()
vsftp 버전 업데이트에 포함된 보안 강화가 문제인듯 하다.
다음 URL을 참고
https://security.appspot.com/vsftpd/Changelog.txt
changelog v2.3.4 부분을 보면 다음과 같이 설명 되어 있다.
– Add stronger checks for the configuration error of running with a writeable root directory inside a chroot().
This may bite people who carelessly turned on chroot_local_user but such is life.
해결하기 위해서는 몇 가지 방법이 있으나 간단하게 allow_writeable_chroot=YES 추가해 줌으로써 해결이 가능하다.