FTPUSERS(5)

명칭
ftpusers, ftpchroot - ftpd(8) 액세스 제어 파일

해설
어느 유저가 로그인할 수 있을까를 ftpusers 파일에 정의하는 것으로, ftpd(8) 에 대한 유저의 액세스를 제어할 수 있습니다.

ftpusers 파일이 존재하지 않는 경우, 모든 유저가 액세스 할 수 없게 됩니다.

“\” (은)는 이스케이프 캐릭터입니다. 즉, 코멘트 캐릭터의 의미를 이스케이프 한다 위해(때문에) 이용할 수가 있어 또 있는 행의 마지막에 이 캐릭터가 있는 경우, 설정 지시문이 복수행에 넘게 됩니다. “#” (은)는 코멘트 캐릭터이며, 이 캐릭터로부터 줄 끝까지의 캐릭터는 모두 무시 됩니다 (다만, 이 캐릭터가 이스케이프 캐릭터에 의해 이스케이프 되고 있는 경우는 제외합니다).

각 행의 문법은 다음과 같습니다:
    userglob[:groupglob][@host] [directive [class]]

이러한 요소는 다음과 같습니다:

userglob
    fnmatch(3) 의 그로브맛팅 (을)를 이용해 유저명에 대해서 매치이 취해집니다 (예를 들면 ‘f*’)

groupglob
    fnmatch(3) 의 그로브맛팅 (을)를 이용해 유저가 소속하는 모든 그룹에 대해서 매치이 취해집니다. (예를 들면 ‘*src’)

host
    리모트 호스트의 주소 에 대해서 매치 하는 CIDR 주소 ( inet_net_pton(3) (을)를 참조) (예를 들면 ‘1.2. 3.4/24’) 혹은 리모트 호스트명 에 대해서 매치이 취해진다 fnmatch(3) 그로브 (예를 들면 ‘*.netbsd.org’) 입니다.

directive
    이것이 “allow” 혹은 “yes” 인 경우, 지정의 유저는 액세스 허가됩니다. “deny” 혹은 “no” 인 경우, 혹은 directive 하지만 주어지지 않은 경우에는, 지정의 유저는 액세스 거부됩니다.

class
    ftpd.conf(5) 하지만 이용하는 클래스를 정의하는 것입니다.

class 하지만 정의되어 있지 않은 경우에는, 다음의 어느쪽이든 1 개(살)에 디폴트 설정됩니다:

chroot
    유저에게 매치 하는 것이 /etc/ftpchroot 파일내에 존재하는 경우.

guest
    유저명이 “anonymous” 인가 ‘ftp’ 의 언젠가인 경우.

real
    앞의 2 개가 어느 쪽도 아닌 경우.

한번 매치에 성공하면(자), 그 이상의 비교는 실시하지 않습니다. 매치 하는 것이 발견되지 않는 경우는, 그 유저는 액세스를 허가됩니다. 이 문법은 이전과의 호환성을 유지하는 것입니다.

유저가 guest 에서의 로그인을 요구해 왔을 경우, ftpd(8) 서버는 “anonymous” (와)과 “ftp” 의 머지않아에서도 액세스 할 수 있는 것을 확인합니다. 그 때문에, 디폴트로 모든 유저를 거부하고 있는 경우, guest 에서의 로그인을 가능하게 하기 위해서 /etc/ftpusers 파일에 “anonymous allow” (와)과 “ftp allow” 그렇다고 하는 행을 추가할 필요가 있습니다.

  /etc/ftpchroot
/etc/ftpchroot 파일은, 세션의 루트 디렉토리를 ftpd.conf(5) 의 chroot 지시문 (설정되어 있으면)으로 지정되어 있는 디렉토리 혹은 유저의 홈 디렉토리에 ( chroot(2) (을)를 사용해) 변경하는 유저가 누구인지를 결정하는데 사용됩니다. 이 파일이 존재하지 않는 경우, 루트 디렉토리의 변경은 행해지지 않습니다.

이 파일의 문법은 ftpusers (와)과 닮아 있습니다만, class 인수가 무시되는 점이 다릅니다. 명확하게 매치 하는 것이 존재하는 경우, 세션의 루트 디렉토리가 변경됩니다. 일단 매치이 성공하면(자) 그 이상의 비교는 실시하지 않습니다. 이 문법은 이전과의 호환성을 유지하는 것입니다.

관련 파일
/etc/ftpchroot
    FTP 세션에서의 루트 디렉토리를 chroot(2) (을)를 이용해 변경하는 일반 유저의 리스트입니다.
/etc/ftpusers
    이 파일입니다.
/usr/share/examples/ftpd/ftpusers
    ftpusers 의 샘플 파일입니다.

관련 항목
fnmatch(3), inet_net_pton(3), ftpd.conf(5), ftpd(8)