Daily Archives: February 6, 2014

Home »  2014 »  February »  6th (Thursday)

vsftpd cmds_allowed ( 계정별관리 )

두 번째로 cmds_allowed 설정은 chroot 설정과 유사한 방식으로 적용해 주면 되는데, 우선 vsftpd에서 권한을 관리할 디렉토리를 하나 만들어 준다. 나는 /etc/vsftpd_user_conf 라는 이름으로 디렉토리를 생성했다. 그리고 나서 별도로 관리 할 계정의 이름으로 파일을 하나 생성한다. 파일명은 이미 존재하는 계정의 이름으로 생성해야 한다. 이렇게 설정된 파일명과 동일한 이름의 계정에 관해서 별도의 설정이 적용되고, 나머지 계정에 대해서는 기본(default) 설정이 적용된다.
/etc/vsftpd_user_conf 디렉토리 안에 ftp라는 파일을 아래와 같은 내용으로 생성해준다. 이는 ftp라는 이름의 계정에 관한 설정이 된다.
cmds_allowed=ABOR,ACCT,ALLO,APPE,CDUP,CWD,EPRT,EPSV,FEAT,HELP,LIST,MDTM,MODE,NLST,NOOP,
OPTS,PASS,PASV,PORT,PWD,QUIT,REIN,REST,RETR,RNFR,RNTO,SITE,SIZE,SMNT,STAT,STOU,STRU,SYST,
TYPE,USER,XCUP,XCWD,XPWD
cmds_allowed는 단어 그대로 실행 가능한(allow) 명령어(commends)를 지정해 주는 것이다. 위 내용은 FTP 명령어 중에서 파일 업로드/삭제, 디렉토리 생성/삭제에 관한 명령어만 제외한 것이다(STOR, DELE, MKDIR, MKD, XMKD, RMD, XRMD를 제외). 이렇게 파일은 만든 후에 /etc/vsftpd.conf에 아래의 내용을 추가해 준다.
user_config_dir=/etc/vsftpd_user_conf
출처 http://sakuragis.egloos.com/5740235