XFTP 사용시 일반 유저의 이동 제한 [5]

XFTP 사용시 일반 유저의 이동 제한

2009-06-26 16:06 - 꽃난초
안녕하세요

저는 Cent-OS 4.7 에서 X-manager enterprise 3.0을 사용중이며 Xftp 3.0에 대해서 질문이 있습니다.

일반 사용자가 서버에 xftp로 접속할 시에 프로토콜은 sftp를 사용하며 자신의 홈 디렉토리의 상위 디렉토리로 가는것을 제한하기 위해서 /etc/proftpd.conf 파일을 수정하려 했는데 이 파일이 존재하지 않네요

혹시 다른 ftp 버젼의 conf가 존재하는것인지 그러니깐 xftp는 proftp를 사용하지 않고 다른것을 사용하는것인지 아니면 제가 경로를 잘 못 선택한 것인지 궁금합니다.

이에 대해서 꼭 답변해 주시고 만약 위의 내용에 대한 답변이 된다면 이동 제한에 대한 방법도 추가로 말씀해 주시기 바랍니다.

제가 알고있는 내용이 맞는지 궁금해서 입니다.

이상입니다.

수고하세요

제품명 : Xftp 3.0


Re: XFTP 사용시 일반 유저의 이동 제한

2009-06-26 18:40 - 넷사랑
안녕하세요?
넷사랑컴퓨터 기술지원입니다.

sftp는 SSH 프로토콜의 하위시스템으로 FTP 서버의 일종인 proftp와는 별개의 프로토콜입니다.
상위 디렉토리로 이동하는 것을 제한하는 방법으로 많이 쓰는 것은 사용자의 홈디렉토리를 chroot 기능을 이용하여 '/'(root)로 만드는 것이나 아쉽게도 현재 배포 중인 SFPT(SSH) 자체에는 그런 기능이 없는 것 같습니다.

하지만 추가적인 패키지(ssh-chroot)로 이런 기능을 구현하고 있는 것 같으니 이 부분을 찾아 보시기 바랍니다.

감사합니다.


Re: XFTP 사용시 일반 유저의 이동 제한

2009-06-26 18:53 - 꽃난초
답변 감사합니다.

현재 xftp 3.0에서 지원되는 프로토콜이 ftp와 sftp로 알고있는데요 sftp로는 이동 제한 기능을 사용할수 없는것이지요? 그렇다면 sftp를 사용 금지로 만들수 있는지 궁금합니다.

그렇게 된다면 사용자들이 ftp로 접속하여하 하며 이때에는 proftpd.conf를 사용해서 제한을 할수 있는것이 아닌가 해서 질문 드립니다.

또한 답변에서 말씀드린 추가적인 패키지라는 것이 추가적으로 제품 구입을 해야 하는것인지 아니면 업그레이드를 통해서 제공 받을수 있는 것인지 궁금합니다.

이상입니다.

수고하세요


Re: XFTP 사용시 일반 유저의 이동 제한

2009-06-29 11:20 - 넷사랑
sftp를 통한 접속에서 디렉토리 이동 제한을 하는 기능은 저희 제품인 Xftp 자체에서는 할 수 없고 서버에서 처리해 줘야 하는 부분입니다.
하지만 sftp의 상위 시스템인 SSH 서버에는 기본적으로 이러한 기능이 없습니다. 추가적인 패키지를 SSH 서버가 설치된 CentOS에 설치하여야 하며 그와 관련된 패키지가 ssh-chroot라는 패키지입니다.

sftp를 서비스하지 않도록 하려면 서버의 /etc/ssh/sshd.conf 파일에서 다음 부분을 주석 처리(#)하시고 SSH 데몬을 재구동 하시면 됩니다.

1. vi /etc/ssh/sshd.conf
.
.
.
Subsystem sftp /.../sftp-server => 이 부분을 맨 앞에 #을 추가하여 주석 처리합니다.

2. sshd 데몬 재구동
# /etc/rc.d/init.d/sshd restart


다음은 sftp가 아닌 FTP에서 디렉토리 이동 제한 기능에 관한 것입니다. CentOS는 기본적으로 vsftp라는 ftp 데몬을 채택하고 있습니다. CentOS 서버에 vsftp가 설치되어 있다면 다음을 참고하시어 디렉토리 이동 제한 기능을 설정해 보세요. vsftp가 없다면 CentOS의 패키지 추가 기능을 사용하여 설치해 보세요.

1. /etc/vsftpd/vsftpd.conf를 편집합니다.
#chroot_list_enable=YES => 주석 처리되어 있다면 맨 앞의 #을 제거하여 주석 처리를 해제합니다.
#chroot_list_file=/etc/vsftpd.chroot_list => 이 부분도 주석 처리를 해제합니다.

2. /etc/vsftpd.chroot_list 파일을 편집하여(없으면 생성합니다) 디렉토리 이동제한 기능을 적용하고자 하는 사용자 이름을 입력합니다.

user1
user2
user3
.
.
.

3. vsftpd를 재구동합니다.

# /etc/rc.d/vsftpd restart


vsftp에 대한 더 자세한 설명을 원하시면 vsftp에 대한 매뉴얼을 참고 하시거나 해당 개발자의 기술지원을 받으셔야 합니다. FTP 서버로 Proftp 등 다른 ftp 서버를 사용하여 설정을 하시고자 한다면 이 또한 해당 매뉴얼 참고하시거나 개발자의 기술지원을 받아 보십시오.

원하시는 결과를 얻으셨으면 합니다.

감사합니다.


Re: XFTP 사용시 일반 유저의 이동 제한

2009-06-30 23:27 - 꽃난초
감사합니다

친절한 답변에 많은 도움이 되었습니다.

현재 SSH를 통해서 사용자들의 FTP를 사용하던 것을 blocking하고 FTP 서버 이용시 vsftpd를 사용하게 설정하였습니다.

한가지 질문이 있습니다.

chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

위의 두 항에 대한 주석 처리를 해제한후 restart 해보니 Xftp에서 사용자 인증이 되지 않는 현상이 발생하였습니다.
- 이부분은 list에 사용자 id를 넣어보기도 하고 빼보기도 하였으나 동일하게 발생하였습니다.

그래서 결국 다시 주석 처리 한 후 chroot_local_user=YES라는 항을 추가로 작성하여 모든 사용자에 대해서 홈디렉토리 위로 못가게 막았습니다
이렇게 했을경우 다른 사용자 아이디의 경우 사용자 인증 실패라는 오류가 발생하지 않았고 로그인이 잘 되었으며 홈디렉토리 위로 접근하지 못하였습니다.
하지만 root 로그인에 대해서 사용자 인증이 되지 않는 현상이 발생하였습니다. 따라서 이와 같은 방법을 사용했을 경우 FTP를 통해서는 홈 위로 올라갈수 있는 방법이 없습니다. (ROOT 로그인이 안되므로)

위에서 말씀드린 두가지 부분에 대해서 혹시 지원해주실 부분 있으면 부탁드립니다

항상 친절한 답변 감사드립니다.


Re: XFTP 사용시 일반 유저의 이동 제한

2009-07-01 18:35 - 넷사랑
chroot_local_user라는 항목은 vsftpd 버전에 따라 쓰이기도 하고 쓰이지 않기도 하는 것 같습니다. 정확한 것은 해당 프로그램 사용자 매뉴얼을 참고하셔야 합니다.(CentOS의 4.7의 경우 맨페이지에는 해당 항목이 있었으나 실제 프로그램에서는 잘못된 항목이라고 나옵니다.)

chroot_list_file은 /etc/vsftpd.chroot_list라고 지정했으므로 반드시 /etc/vsftpd.chroot_list 파일에 등록을 하여야 합니다. 이 부분에 혹시 오류가 있었는지 확인해 보시기 바랍니다.

root로 로그인이 안되는 문제는 chroot 기능 설정 이전 이슈로서 시스템의 중요한 사용자는 로그인이 안되도록 해 놓은 vsftpd의 기본 설정의 문제입니다. 이 파일은 CentOS 4.7의 경우 /etc/vsftpd.user_list입니다. 이 파일은 로그인을 제한하고자 하는 사용자의 목록을 담아 놓은 파일이니 여기에서 root를 삭제하시거나 주석처리하시면 root로 로그인이 가능할 것입니다.


감사합니다


이전 조회수: 333