1 분 소요

점점 나의 블로그는 리마인더용이 되어가는듯 하지만 여튼..

연구실 ftp로 과제를 받는데, 학생들이 업로드만 가능하고 다운로드는 안되게 등등

설정 바꾸려고 한다.. 맨날 까먹어서 다시 하는김에 써놓음.


1. 설치

$apt-get install vsftpd

하면 끝...


2. 계정 추가

ftp에 접속할 때 쓸 계정을 만들자

나는 학생들이 접속할거니까.. student로 만듦

$adduser student

이렇게 하면 비번 및 사용자 정보 치라고 하는데 다 쳐주면 된다



3. 기본 설정 변경

/etc/vsftpd.conf 를 열면, 여러 설정들이 보이는데
    • anonymous_enable=NO   익명접근 허용 안함
    • local_enable=YES   계정 접속 활성화
    • write_enable=YES   쓰기 활성화
    • chroot_local_user=YES   루트 탐색 금지시킨것
    • chroot_list_enable=YES  루트 탐색할수 있는 계정 리스트 허용
    로 바꿔준다. YES, NO는 대문자로 써야한다.

    (*참고로, 루트 계정을 탐색할수 있는 계정 리스트 만들기
    vsftpd.chroot_list 라는 파일을 만든 뒤 안에 계정이름을 걍 적어준다 (엔터구분)
    그런 뒤에, chroot_list_file=/etc/vsftpd.chroot_list 로 설정파일 바꿔주면 됨)




    4. 추가 설정 변경-  세부 ftp 권한 설정

    /etc/ 안에 vsftpd_user_conf 라는 폴더를 만들어 준다.

    그 안에 권한을 조정하고자 하는 계정의 이름으로 파일을 하나 만들어줌 
    (ex) /etc/vsftpd_user_conf/student ) 

    여기에 추가되는 설정들은 /etc/vsftpd.conf 보다 우선한다.

    1) 나는, student가 접속했을 때 다른 폴더로 접속하게 만들고 싶으므로,

    • local_root=/home/username/ftp

    라고 추가하였고

    2) 과제 제출을 위한 ftp이므로 세부 퍼미션 설정을 해줘야한다.

    cmds_allowed=LIST,CWD,STOR,QUIT,PASS,PASV,PWD,ACCT,USER,STAT,NOOP,PORT,NLIST,SITE,ABOR,SYST,TYPE,STRU

    뭐,, 난 이렇게 추가하였다.

    LIST, CWD와 같은 것들은 raw ftp 명령어들인데, 허용하고자 하는 것만 써주면 된다.

    참고로 저 위에 내가 써놓은 건 업로드만 가능하고 아무것도 못하는 설정이다.. 노가다 ㅠㅡ

    ftp 명령어들은 포스트 아래에 첨부하였다.


    3) 그 다음, /etc/vsftpd.conf 를 열어서 

    • user_config_dir=/etc/vsftpd_user_conf

    를 추가해 준다



    5.  ftp 재시작

    $sudo service vsftpd restart

    이제 접속해서 확인해보면 된다.



    6. 참고(Raw Ftp 명령어들)



    7. 추가하면, 과제제출을 받을때는 폴더 권한을 chmod 777로 해놓고,
    마감하면 755로 바꿔 더 이상 업로드가 되지 않게 하였다.
    이런식으로 매 주 과제를 관리했었음





    카테고리:

    업데이트:

    댓글남기기