이 문서를 다른 웹이나 출판물에 게시할 때는 반드시 출처를 밝혀 주시기 바랍니다.
최종 수정일 : 2001년 8월 1일 작성자 : 윤 일 (admin@rootman.org)
HOW-WO Configuration ftpaccess(wu-ftpd)
# 이 강좌는 차후 계속 업그레이드 됩니다. # ftpaccess 파일의 설정들에 대한 설명은 주석 처리 되어 있습니다. deny-uid %-99 %65534- deny-gid %-99 %65534- allow-uid ftp allow-gid ftp # deny-uid에 ftp 접속을 허락하고 싶지 않은 사용자의 uid를 설정하면 그 사용자는 ftp에 접속할 수 없다. # 하지만 이 파일에 설정하는 것보다 ftpuser 파일에 추가하는 것이 더 편할것이다. # 이 설정은 단지 보안상의 이유로 접속되어서는 안되는 사용자들을 설정한 것이다. # /etc/passwd 파일에 설정된 uid 와 gid 1 - 99 까지에 해당하는 사용자는 접속할 수 없다. ('ftp' 제외) # 이 사용자들은 실제 사용자가 아닌 system user 들이다. (예: bin, demon, mail, uucp등 /etc/passwd파일 참고)
class all real,guest,anonymous * # 모든 곳에서 접속하는 real, guest, anonymous를 "all" 이라는 클래스로 정의했다. # wu-ftpd에서는 접속하는 접속자의 유형에 따라 class로 분류함으로써 손쉽게 각 class를 제어할 수 있다. # class 정의는 다음과 같은 형식을 따른다. # # <class> <class-name> <type-list> <IP-Address(또는 host-name)> # # 첫 번째 필드의 "class"는 클래스를 선언하는 지시자이다. # 두 번째 필드의 "class-name"은 사용하고 싶은 class 이름을 적어주면 된다. # 세 번째 필드의 "type-list"는 class에 포함할 접속자 유형을 적어주면 된다. # 2가지 이상의 접속자 유형을 포함시킬 경우 컴마( , )로 구분하다. # "type-list"에 사용할 수 있는 접속자 유형은 다음과 같다. # 1) anonymous : 익명(anonymous)ftp로 접속해 오는 사용자 # 2) guest : 손님(guest) 사용자로 처리되는 사용자 # 3) real : 시스템의 계정 사용자 # 네 번쨰 필드의 "IP-Address(또는 host-name)은 class에 포함시킬 접속자의 IP 주소 또는 host 이름을 적어 주면 된다. # 와일드 카드( * )는 모든 IP 주소를 가리킨다. 여러개의 IP주소를 적을 경우 각 IP 주소는 컴마( , )로 구분한다. # Class 생성하기 예제 # class rootman real 203.241.205.* # 시스템 계정 사용자(real)들의 ftp 접속중에서 203.241.205의 네트웍 주소를 가진 사용자들을 "rootman" 클래스로 정의한 # 다.
email yunil@rootman.co.kr # FTP관리자 e-mail을 적어주면 된다.
loginfails 5 # FTP 로그인시에 loginfails에 적용된 수 만큼 로그인 실패를 하면 FTP 세션이 종료된다.
readme README* login readme README* cwd=* # 아래의 message와 같은 기능을 한다. 번거롭게 README 파일까지 작성할 필요는 없을 것이다.
message /welcome.msg login # 사용자 로그인시에 보여줄 메시지 파일을 정의한다. # 메시지 파일의 경로를 적어주면 되는데 ftp 홈디렉토리가 최상위( / ) 경로가 된다. # 최상위( / ) 경로에 welcome.msg 파일이 있을 때는 /를 빼고 파일명만 적어줘도 된다.
message .message cwd=* # 사용자가 디렉토리 이동시에 보여줄 메시지 파일을 정의한다. # 위에서는 모든 디렉토리 이동시에 .message파일을 보여준다. # 단, 이동하는 디렉토리안에 .message파일이 존재해야 된다.
compress yes all tar yes all # 특정 "class"에 대해 compress명령과 tar명령을 지원할 것인지 결정한다. # 두 개 이상의 클래스에 대해 설정할 때는 컴마( , )로 클래스를 구분하다. # 설정을 하지 않는다면 기본적으로 "no"로 적용된다. # 위의 설정은 "all" 클래스에 속하는 접속자들에게 compress 명령과 tar 명령을 사용할 수 있게 한다.
chmod no guest,anonymous delete no anonymous overwrit no anonymous rename no anonymous
# 특정 "class"에 대해 chmod(퍼미션 변경), delete(삭제), overwrite(덮어 쓰기), rename(파일 이름 변경)등의 권한을 줄 # 것인지를 결정한다. 설정을 하지 않는다면 기본적으로 "yes"로 적용된다.
limit all 30 Any /var/ftp/etc/ftp.tomany # 클래스별로 최대 접속자수를 제한 할 수 있다. 설정 형식은 다음과 같다. # limit <class> <limit-mumber> <when> <error-file> # [when]에는 Any(항상)와 특정 요일이나 특정 시간대에만 limit 옵션이 적용되게 설정할 수 있다. # 요일을 설정할 땐 Mo(월), Tu(화), We(수), Th(목), Fr(금), Sa(토), Su(일)로 설정해야 된다. # 요일 예) limit all 30 Sa,Su,Mo /var/ftp/etc/ftp.tomany --> 요일의 구분은 콤마(,)로 한다. # 특정 시간을 설정할 땐 0000-0000으로 시간의 범위를 설정해야 된다. # 첫번째 두자리는 시간(hour)이고 나머지 두자리는 분(minute)에 해당된다. # 시간 예) limit all 30 0100-0800 /var/ftp/etc/ftp.tomany --> 01시 부터 08시로 설정 # 요일과 시간을 함께 설정할 수도 있다. # 요일, 시간 예) limit all 30 Su0100-0800 /var/ftp/etc/ftp.tomany --> 일요일 01시부터 08시까지로 설정
log tarnsfers anonymous,guest,real inbound,outbound # ftp 로그기록에 대한 설정이다. 위의 설정은 anonymous, guest, real(계정 사용자)들의 다운로드, 업로드 모든 것을 # /var/log/xferlog 파일에 기록하라는 설정이다.
shutdown /var/ftp/shutmsg # shutdown 옵션에 사용할 파일을 지정한다. # shutdown 으로 지정된 문서를 이용해서 ftp 데몬의 shutdown에 관련된 제어를 할 수 있다. # shutdown 시간과 새로운 접속자를 받아 들일 시간, 접속된 사용자를 drop할 시간등을 지정할 수 있다.
# --> shutmsg 파일 작성 형식 # <year> <month> <day> <hour> <minute> <deny-offset> <dic_offset> <text> # 보여줄 메시지에 해당하는 <text>는 한줄 내려서 적는 것이 일반적이다.
# <year> <month> <day> <hour> <minute>로 shutdow 시간을 설정한다. # <year> : 년도를 4자리수로 설정한다. (예: 2001년 : 2001) # <month> : 월(month)을 0 ~ 11로 설정한다. 월의 표현은 0부터 시작된다 ( 1월 0, 3월 2, 6월 5) # <hour> : 시간을 24시 표기로 설정한다. (0 ~ 23) # <minute> : 분(minute)을 설정한다.(0 ~ 59)
# <deny-offset> # 새로운 접속자를 받지 않을 시간을 설정한다. # 4자리수로 표현해야 되고 첫 두자리는 시간(hour) 나머지 두자리는 분(minute)에 해당 된다.(0120 --> 1시간 20분) # 설정하는 시간은 shutdown 시간으로 부터 before(전)로 계산된다.(0020 --> shutdown 20분전)
# <disc-offset> # 현재 접속자들을 drop 시킬 시간을 설정한다. # 4자리수로 표현해야 되고 첫 두자리는 시간(hour) 나머지 두자리는 분(minute)에 해당 된다.(0120 --> 1시간 20분) # 설정하는 시간은 shutdown 시간으로 부터 before(전)로 계산된다.(0005 --> shutdown 5분전)
# <text> # 사용자 로그인 시에 shutdown에 대한 정보를 출력시킨다. # --> <text>에 사용할 수 있는 변수 # %s : shutdown 시간 # %r : 새로운 접속자를 받지 않을 시간 # %d : 접속자들이 drop 될 시간
# /var/ftp/shutmsg 설정 내용
|